# basic tools
library(tidyverse)
# checking data
library(MVN)
library(correlation)
library(performance)
library(parameters)
library(insight)
# building the models
library(lavaan)
# cheking the models
library(semTools)
# model visualization
library(semPlot)
library(semptools)
ESS07 <- read.csv("../data/ESS07.csv")
Many variables in the social and behavioral sciences represent hypothetical constructs (e.g., traits, attitudes, values)
Direct access to hypothetical constructs is rare. Many constructs can only be captured by (multiple) observable indicators (e.g., in a questionnaire)
It is assumed that such indicators are manifestations of hypothetical constructs - Manifest indicators: directly observable - Latent variables: not directly observable
We need a model that is able to conceptualize the relationship between manifest indicators and latent variables
The classic test theory Novick (1966)
Translation of the theoretical model into a measurement model
We need a model that is able to conceptualize the relationship between manifest indicators and latent variables
The formal expression is:
\[ \begin{split} y_1=\lambda_1\eta+\epsilon_1 \\ y_2=\lambda_2\eta+\epsilon_2 \\ y_3=\lambda_3\eta+\epsilon_3 \end{split} \]
\[\boldsymbol{Y}=\boldsymbol{\Lambda}\eta+\boldsymbol{E}\]
Checking whether it is a reflexive or formative construct
Test the hypothesized relationship between observed indicators and latent variables
Specification of the model (Choose a method to assign a scale to the latent variable)
Checking the model assumptions (ML estimation requirements)
Checking wether the model is identified
Complexity of a CFA model is limited by the total number of observations (p) and the number of unknown model parameters (q)
The following applies:
With df > 0 we can test the fit of the estimated model to the empirical data
The maximum likelihood function minimizes the discrepancy between observed and model implied (co)variances
\[F_{ML}=ln|\Sigma(\theta)|-ln|S|+tr[S\Sigma(\theta)^{-1}]-p\]
The final value of the discrepancy function \(F_{ML}\) multiplied with n – 1 follows a \(\chi^2\) distribution:
\[F_{ML}(n-1)=\chi^2_{ML}\]
Checking the fit measurements
Global fit measures: appropriateness of the entire model
| Index | Typ | Theoretical range | Cut-off | N sensitive | Penalty for complexity |
|---|---|---|---|---|---|
| X2/df | badness | \(\ge 0\) | \(<5\) | yes | no |
| CFI | godness | 0.0 – 1.0 | \(\ge.95\ (\ge.90)\) | no | yes |
| TLI | godness | 0.0 – 1.0* | / | no | yes |
| SRMR | badness | \(\ge 0\) | \(<.08\) | yes | no |
| RMSEA | badness | \(\ge 0\) | \(\leq.05\ (\leq.08)\) | yes to small N | yes |
| PCLOSE | badness | 0.0 – 1.0 | \(\ge.95\) | yes | / |
*negative values indicate extremely misspecified model; when exceeds 1, model is extremely well-fitting
Source: West et al. (2012). Model fit and model selection in structural equation modeling. In Hoyle, R. H. (Ed.). (2012). Handbook of Structural Equation Modeling (p. 212-213). Guilford Press. See also Hu and Bentler (1999)
Checking for misspecification
What causes model misfit?
How to diagnose model misfit?
Modification indices (MIs):
Lagrange multiplier (Sörbom (1989)) - approximation of the reduction of \(\chi^2\) if a single constrained parameter is freely estimated
Constrained parameters in CFA:
Identifying the mean structure (optional)
The formal expression including item intercepts:
\[ \begin{split} y_1=\tau_1+\lambda_1\eta+\epsilon_1 \\ y_2=\tau_2+\lambda_2\eta+\epsilon_2 \\ y_3=\tau_3+\lambda_3\eta+\epsilon_3 \\ \end{split} \]
Means of the indicators can be reproduced by the intercept, factor loading, and latent mean estimates
Identifying the mean structure:
Our example measurement model Universalism comes from the Theory of Basic Human Values according to Schwartz (1992) and comprises three facets - Concern, Nature, Tolerance.
Concern: Commitment to equality, justice and protection for all people
Nature: Preservation of the natural environment
Tolerance: Acceptance and understanding of those who are different from oneself
In order to measure this attitude construct, three questions (items) were created in ESS 7 (2014) and queried in various countries (e.g. Czech Republic, Germany, Great Britain).
| Name | Label | Construct |
|---|---|---|
| ipeqopt | Important that people are treated equally and have equal opportunities | Universalism |
| ipudrst | Important to understand different people | Universalism |
| impenv | Important to care for nature and environment | Universalism |
Indicators are “effects” of the latent variable and therefore we specify a reflective measurement model
The syntax commands for specifying a lavaan model:
https://lavaan.ugent.be/tutorial/syntax1.html
| Formula type | Operator | Mnemonic |
|---|---|---|
| latent variable definition | =~ | is measured by |
| regression | ~ | is regressed on |
| (residual) (co)variance | ~~ | is correlated with |
| intercept | ~1 | intercept |
universalism <- "Universalism =~ ipeqopt + ipudrst + impenv"
Lavaan automatically uses the reference indicator method, so one indicator’s factual loading is fixed at 1. Accordingly, the variance of the latent factor is estimated.
In Lavaan, however, it is also very easy to use the fixed factor method, i.e. to fix the variance of the latent factor to 1. This allows all factor loadings to be freely estimated.
This requires the use of labels, i.e. the labeling of individual parameters in order to be able to control them directly. The syntax commands for labeling a lavaan model can be found here: https://lavaan.ugent.be/tutorial/syntax2.html. For this step, we only need to understand how individual parameters can be fixed and freely calculated. As soon as it comes to the calculation of measurement invariance, we will work with labels again. But more on that later.
Reference indicator method:
universalism <- "Universalism =~ 1*ipeqopt + ipudrst + impenv"
"Universalism =~ NA*ipeqopt + ipudrst + 1*impenv"
[1] "Universalism =~ NA*ipeqopt + ipudrst + 1*impenv"
Fixed factor method:
universalism <- "
# specification of the measurement model
Universalism =~ NA*ipeqopt + ipudrst + impenv
# specification of the variance
Universalism ~~ 1*Universalism
"
Freely estimate the factor loading of the first indicator by NA*ipeqopt and fix the variance of the latent factor by 1*Universalism The variance of a variable is specified as covariance with itself, hence Universalism ~~ Universalism In the end we get Universalism ~~ 1*Universalism
Now let’s get an overview of the properties of our variables. First, let’s look at the descriptive statistics of our items to gain knowledge of missing values, central tendency properties, variability, and distribution.
It is possible to choose between:
Mardia’s test (“mardia”), Henze-Zirkler’s test (“hz”), Royston’s test (“royston”), Doornik-Hansen’s test (“dh”) and E-statistic (“energy”). Default is Henze-Zirkler’s test.
ESS07 %>%
select(ipeqopt, ipudrst, impenv) %>%
mvn() %>%
# optional for better display
export_table(table_width = 1, digits = 3)
Test | HZ | p value | MVN
---------------------------------------
Henze-Zirkler | 133.042 | 0 | NO
Test | Variable | Statistic | p value | Normality
----------------------------------------------------------------
Anderson-Darling | ipeqopt | 362.6880 | <0.001 | NO
Anderson-Darling | ipudrst | 332.9049 | <0.001 | NO
Anderson-Darling | impenv | 322.7889 | <0.001 | NO
n | Mean | Std.Dev | Median | Min | Max | 25th | 75th | Skew | Kurtosis
-----------------------------------------------------------------------------
5844 | 4.945 | 1.040 | 5 | 1 | 6 | 4 | 6 | -1.142 | 1.295
5844 | 4.717 | 1.027 | 5 | 1 | 6 | 4 | 5 | -0.937 | 0.892
5844 | 4.878 | 1.025 | 5 | 1 | 6 | 4 | 6 | -0.933 | 0.732
So, we don’t have any missing values in our example dataset and a more than sufficient sample size. Nevertheless, the variables show a right skewed distribution. Consequently, the individual variables are not normally distributed and there is no multivariate normal distribution (Henze-Zirkler value).
We can also validate this finding graphically.
The Q-Q plot, where “Q” stands for quantile, is a widely used graphical approach to evaluate the agreement between two probability distributions. Each axis refers to the quantiles of probability distributions to be compared, where one of the axes indicates theoretical quantiles (hypothesized quantiles) and the other indicates the observed quantiles. If the observed data fit hypothesized distribution, the points in the Q-Q plot will approximately lie on the line y = x.
Since all incoming variables have a right-skewed distribution, this fact is not surprising. Thus, we can conclude that problems with multivariate normality arise from the skewed distribution of the three variables.
plots <- ESS07 %>%
select(ipeqopt, ipudrst, impenv) %>%
mvn(univariatePlot = "histogram", multivariatePlot = "qq")
As a result, we can conclude that this data set does not satisfy MVN assumption based on the fact that the two test results are against it and the chi-square Q-Q plot indicates departures from multivariate normal distribution.
Due to the missing multivariate normal distribution, we use the MLR estimator. If we were dealing with missing values, we would use Full Information Maximum Likelihood (FIML) as the estimation strategy.
Next, we want to check whether the items are sufficiently correlated with each other. A sufficient correlation of the items would support our assumption of a reflective factor, since it would be reasonable that the common variance of the variables is caused by the latent factor.
ESS07 %>%
select(ipeqopt, ipudrst, impenv) %>%
correlation() %>%
summary() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Parameter | impenv | ipudrst
----------------------------
ipeqopt | 0.28 | 0.35
ipudrst | 0.30 |
There is sufficient correlation, so it is initially plausible that a latent factor in the background would explain the common variance.
Finally, we want to deal with the anticipated itemscale. Here we are primarily interested in the various measures of internal consistencies.
ESS07 %>%
select(ipeqopt, ipudrst, impenv) %>%
principal_components(n = 1) %>%
check_itemscale() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Item | Missings | Mean | SD | Skewness | Difficulty | Discrimination | alpha if deleted
--------------------------------------------------------------------------------------------
ipeqopt | 0 | 4.95 | 1.04 | -1.14 | 0.82 | 0.39 | 0.46
ipudrst | 0 | 4.72 | 1.03 | -0.94 | 0.79 | 0.41 | 0.43
impenv | 0 | 4.88 | 1.02 | -0.93 | 0.81 | 0.35 | 0.52
The selected items can be plausibly mapped together in one scale.
Now let’s estimate the model using Lavaan. For this we use the cfa() function.
universalism_fit <- cfa(
model = "Universalism =~ ipeqopt + ipudrst + impenv",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
Now we can look at the estimated model. To do this, we use the summary() function.
summary(
object = universalism_fit,
fit.measures = T,
standardized = T,
rsquare = T
)
lavaan 0.6-12 ended normally after 24 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 1532.717 1023.100
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.498
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24640.784 -24640.784
Loglikelihood unrestricted model (H1) -24640.784 -24640.784
Akaike (AIC) 49299.567 49299.567
Bayesian (BIC) 49359.626 49359.626
Sample-size adjusted Bayesian (BIC) 49331.026 49331.026
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.595 0.572
ipudrst 1.059 0.063 16.852 0.000 0.630 0.613
impenv 0.837 0.046 18.010 0.000 0.498 0.486
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.945 0.014 363.381 0.000 4.945 4.753
.ipudrst 4.717 0.013 351.024 0.000 4.717 4.592
.impenv 4.878 0.013 363.981 0.000 4.878 4.761
Universalism 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.729 0.030 24.070 0.000 0.729 0.673
.ipudrst 0.659 0.029 22.371 0.000 0.659 0.624
.impenv 0.802 0.023 34.294 0.000 0.802 0.764
Universalism 0.354 0.027 13.341 0.000 1.000 1.000
R-Square:
Estimate
ipeqopt 0.327
ipudrst 0.376
impenv 0.236
Since we estimated a model with three indicators, it is a saturated model, i.e. a model identified with 0 degrees of freedom.
This allows the following graphic to be created with standardized factor loadings.
# optional for better display
par(mfrow=c(1,2))
universalism_plot <- universalism_fit %>%
semPaths(
whatLabels = "std",
style = "mx",
layout = "tree",
edge.color = "black",
intercepts = F,
sizeMan = 10,
sizeLat = 12,
edge.label.cex = 1,
nCharNodes = 50
)
universalism_plot %>%
mark_sig(universalism_fit) %>%
plot()
The semptools package also allows us to easily add additional information to our graphics ( https://cran.r-project.org/web/packages/semptools/vignettes/semptools.html). Here I have also included the level of statistical significance.
A look at the fit measures shows us that the model is saturated due to the 0 degrees of freedom and thus achieves a perfect data fit.
In the following we want to check whether the selected items represent a factor. It can be seen that the factor loadings all reach the cut off of \(\ge\) 0.4 and thus, in combination with the fit indices, there is an appropriate measurement model.
If there are recognizable misfits, we can access the modification indices.
Accordingly, there are no modification options, since the model has just been identified and no degrees of freedom are available.
So let’s look at two more models of Theory of Basic Human Values from the ESS07.
Tradition: Maintaining and preserving cultural, family or religious traditions
Conformity-Interpersonal: Avoidance of upsetting or harming other people
Conformity-Rules: Compliance with rules, laws, and formal obligations
| Name | Label | Construct |
|---|---|---|
| ipmodst | Important to be humble and modest, not draw attention | Tradition |
| imptrad | Important to follow traditions and customs | Tradition |
| ipfrule | Important to care for nature and environment | Conformity |
| ipbhprp | Important to behave properly | Conformity |
Indicators are “effects” of the latent variable and therefore we specify a reflective measurement model.
We use the reference indicator method again to calculate the model.
ESS07 %>%
select(ipmodst, imptrad, ipfrule, ipbhprp) %>%
mvn() %>%
# optional
export_table(table_width = 1, digits = 3)
Test | HZ | p value | MVN
--------------------------------------
Henze-Zirkler | 20.393 | 0 | NO
Test | Variable | Statistic | p value | Normality
----------------------------------------------------------------
Anderson-Darling | ipmodst | 242.6587 | <0.001 | NO
Anderson-Darling | imptrad | 202.8157 | <0.001 | NO
Anderson-Darling | ipfrule | 173.6286 | <0.001 | NO
Anderson-Darling | ipbhprp | 227.9644 | <0.001 | NO
n | Mean | Std.Dev | Median | Min | Max | 25th | 75th | Skew | Kurtosis
-----------------------------------------------------------------------------
5844 | 4.344 | 1.208 | 5 | 1 | 6 | 4 | 5 | -0.643 | -0.191
5844 | 4.155 | 1.380 | 4 | 1 | 6 | 3 | 5 | -0.529 | -0.601
5844 | 3.700 | 1.393 | 4 | 1 | 6 | 2 | 5 | -0.161 | -0.984
5844 | 4.258 | 1.281 | 5 | 1 | 6 | 3 | 5 | -0.554 | -0.514
The variables are scaled metrically on a scale from 0 to 6 and distributed skewed to the right. In addition, there is neither a univariate nor a multivariate normal distribution.
ESS07 %>%
select(ipmodst, imptrad, ipfrule, ipbhprp) %>%
correlation() %>%
summary() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Parameter | ipbhprp | ipfrule | imptrad
---------------------------------------
ipmodst | 0.26 | 0.18 | 0.16
imptrad | 0.32 | 0.29 |
ipfrule | 0.40 | |
There is sufficient correlation, so it is initially plausible that a latent factor in the background would explain the common variance.
ESS07 %>%
select(ipmodst, imptrad, ipfrule, ipbhprp) %>%
principal_components(n = 1) %>%
check_itemscale() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Item | Missings | Mean | SD | Skewness | Difficulty | Discrimination | alpha if deleted
--------------------------------------------------------------------------------------------
ipmodst | 0 | 4.34 | 1.21 | -0.64 | 0.72 | 0.27 | 0.60
imptrad | 0 | 4.16 | 1.38 | -0.53 | 0.69 | 0.36 | 0.54
ipfrule | 0 | 3.70 | 1.39 | -0.16 | 0.62 | 0.41 | 0.50
ipbhprp | 0 | 4.26 | 1.28 | -0.55 | 0.71 | 0.48 | 0.45
The selected items can be plausibly mapped together in one scale.
tradition_conformity_fit <- cfa(
model = "TraditionConformity =~ ipmodst + imptrad + ipfrule + ipbhprp",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 31 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 12
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 17.439 14.378
Degrees of freedom 2 2
P-value (Chi-square) 0.000 0.001
Scaling correction factor 1.213
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2339.880 1848.011
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.266
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.993 0.993
Tucker-Lewis Index (TLI) 0.980 0.980
Robust Comparative Fit Index (CFI) 0.994
Robust Tucker-Lewis Index (TLI) 0.981
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -38377.968 -38377.968
Scaling correction factor 1.002
for the MLR correction
Loglikelihood unrestricted model (H1) -38369.248 -38369.248
Scaling correction factor 1.032
for the MLR correction
Akaike (AIC) 76779.936 76779.936
Bayesian (BIC) 76860.014 76860.014
Sample-size adjusted Bayesian (BIC) 76821.881 76821.881
Root Mean Square Error of Approximation:
RMSEA 0.036 0.033
90 Percent confidence interval - lower 0.022 0.019
90 Percent confidence interval - upper 0.053 0.048
P-value RMSEA <= 0.05 0.909 0.973
Robust RMSEA 0.036
90 Percent confidence interval - lower 0.020
90 Percent confidence interval - upper 0.054
Standardized Root Mean Square Residual:
SRMR 0.011 0.011
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
ipmodst 1.000 0.426 0.353
imptrad 1.546 0.095 16.327 0.000 0.659 0.477
ipfrule 1.875 0.112 16.689 0.000 0.799 0.574
ipbhprp 2.084 0.110 18.900 0.000 0.888 0.693
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipmodst 4.344 0.016 274.875 0.000 4.344 3.596
.imptrad 4.155 0.018 230.189 0.000 4.155 3.011
.ipfrule 3.700 0.018 203.091 0.000 3.700 2.657
.ipbhprp 4.258 0.017 254.054 0.000 4.258 3.323
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipmodst 1.278 0.027 48.093 0.000 1.278 0.876
.imptrad 1.470 0.036 41.297 0.000 1.470 0.772
.ipfrule 1.301 0.038 34.612 0.000 1.301 0.671
.ipbhprp 0.853 0.039 21.855 0.000 0.853 0.519
TraditnCnfrmty 0.182 0.018 10.217 0.000 1.000 1.000
The model is identified with two degrees of freedom.
The fit indices show a good fit to the data. All fit indices are below their cut offs.
In this model, the factor loading of the item ipmodst is clearly misfit, since the factor loading cut-off of 0.4 is not reached.
Here it has to be considered whether the item has a value for the construct or whether the item has to be removed from the measurement model. We decide to take it out.
Further modifications are not necessary since the model shows a very good fit to the data.
tradition_conformity_fit2 <- cfa(
model = "TraditionConformity =~ imptrad + ipfrule + ipbhprp",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 28 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 1849.694 1427.618
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.296
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) 1.000
Robust Tucker-Lewis Index (TLI) 1.000
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -29217.708 -29217.708
Loglikelihood unrestricted model (H1) -29217.708 -29217.708
Akaike (AIC) 58453.417 58453.417
Bayesian (BIC) 58513.475 58513.475
Sample-size adjusted Bayesian (BIC) 58484.876 58484.876
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.673 0.488
ipfrule 1.247 0.059 21.170 0.000 0.839 0.602
ipbhprp 1.252 0.061 20.475 0.000 0.842 0.658
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.155 0.018 230.189 0.000 4.155 3.011
.ipfrule 3.700 0.018 203.091 0.000 3.700 2.657
.ipbhprp 4.258 0.017 254.054 0.000 4.258 3.323
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.452 0.036 39.882 0.000 1.452 0.762
.ipfrule 1.236 0.043 29.051 0.000 1.236 0.637
.ipbhprp 0.932 0.040 23.156 0.000 0.932 0.568
TraditnCnfrmty 0.453 0.032 14.009 0.000 1.000 1.000
This makes the measurement model suitable for further use.
| Name | Label | Construct |
|---|---|---|
| imbgeco | Immigration bad or good for country’s economy | Perceived threat |
| imueclt | Country’s cultural life undermined or enriched by immigrants | Perceived threat |
| imtcjob | Immigrants take jobs away in country or create new jobs | Perceived threat |
| rlgueim | Religious beliefs and practices undermined or enriched by immigrants | Perceived threat |
Indicators are “effects” of the latent variable and therefore we specify a reflective measurement model
We use the reference indicator method again to calculate the model.
ESS07 %>%
select(imbgeco, imueclt, imtcjob, rlgueim) %>%
mvn() %>%
# optional for better display
export_table(table_width = 1, digits = 3)
Test | HZ | p value | MVN
--------------------------------------
Henze-Zirkler | 17.085 | 0 | NO
Test | Variable | Statistic | p value | Normality
----------------------------------------------------------------
Anderson-Darling | imbgeco | 61.6271 | <0.001 | NO
Anderson-Darling | imueclt | 53.8325 | <0.001 | NO
Anderson-Darling | imtcjob | 103.8354 | <0.001 | NO
Anderson-Darling | rlgueim | 108.6560 | <0.001 | NO
n | Mean | Std.Dev | Median | Min | Max | 25th | 75th | Skew | Kurtosis
----------------------------------------------------------------------------
5844 | 4.979 | 2.466 | 5 | 0 | 10 | 3 | 7 | 0.186 | -0.521
5844 | 4.696 | 2.577 | 5 | 0 | 10 | 3 | 6 | 0.174 | -0.623
5844 | 5.187 | 2.301 | 5 | 0 | 10 | 4 | 7 | 0.228 | -0.165
5844 | 5.318 | 2.188 | 5 | 0 | 10 | 4 | 7 | 0.041 | 0.053
The variables are scaled metrically on a scale from 0 to 10. Nevertheless, there is neither a univariate nor a multivariate normal distribution.
ESS07 %>%
select(imbgeco, imueclt, imtcjob, rlgueim) %>%
correlation() %>%
summary() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Parameter | rlgueim | imtcjob | imueclt
---------------------------------------
imbgeco | 0.44 | 0.59 | 0.67
imueclt | 0.57 | 0.54 |
imtcjob | 0.41 | |
There is sufficient correlation, so it is initially plausible that a latent factor in the background would explain the common variance.
ESS07 %>%
select(imbgeco, imueclt, imtcjob, rlgueim) %>%
principal_components(n = 1) %>%
check_itemscale() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
Item | Missings | Mean | SD | Skewness | Difficulty | Discrimination | alpha if deleted
--------------------------------------------------------------------------------------------
imbgeco | 0 | 4.98 | 2.47 | 0.19 | 0.50 | 0.70 | 0.76
imueclt | 0 | 4.70 | 2.58 | 0.17 | 0.47 | 0.73 | 0.74
imtcjob | 0 | 5.19 | 2.30 | 0.23 | 0.52 | 0.61 | 0.79
rlgueim | 0 | 5.32 | 2.19 | 0.04 | 0.53 | 0.56 | 0.82
The selected items can be plausibly mapped together in one scale.
perceived_threat_fit <- cfa(
model = "PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 27 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 12
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 279.766 184.727
Degrees of freedom 2 2
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.514
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 8797.948 5161.721
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.704
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.968 0.965
Tucker-Lewis Index (TLI) 0.905 0.894
Robust Comparative Fit Index (CFI) 0.969
Robust Tucker-Lewis Index (TLI) 0.906
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -49161.345 -49161.345
Scaling correction factor 1.214
for the MLR correction
Loglikelihood unrestricted model (H1) -49021.462 -49021.462
Scaling correction factor 1.257
for the MLR correction
Akaike (AIC) 98346.690 98346.690
Bayesian (BIC) 98426.768 98426.768
Sample-size adjusted Bayesian (BIC) 98388.636 98388.636
Root Mean Square Error of Approximation:
RMSEA 0.154 0.125
90 Percent confidence interval - lower 0.139 0.113
90 Percent confidence interval - upper 0.170 0.138
P-value RMSEA <= 0.05 0.000 0.000
Robust RMSEA 0.154
90 Percent confidence interval - lower 0.136
90 Percent confidence interval - upper 0.173
Standardized Root Mean Square Residual:
SRMR 0.026 0.026
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.967 0.798
imueclt 1.105 0.022 51.221 0.000 2.174 0.844
imtcjob 0.792 0.015 52.565 0.000 1.559 0.677
rlgueim 0.692 0.020 34.946 0.000 1.362 0.622
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.979 0.032 154.352 0.000 4.979 2.019
.imueclt 4.696 0.034 139.327 0.000 4.696 1.823
.imtcjob 5.187 0.030 172.337 0.000 5.187 2.254
.rlgueim 5.318 0.029 185.807 0.000 5.318 2.431
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 2.211 0.085 26.148 0.000 2.211 0.364
.imueclt 1.913 0.094 20.355 0.000 1.913 0.288
.imtcjob 2.865 0.087 33.077 0.000 2.865 0.541
.rlgueim 2.933 0.080 36.474 0.000 2.933 0.613
PerceivedThret 3.870 0.119 32.528 0.000 1.000 1.000
The model is identified with two degrees of freedom.
The model shows a clear misspecification by the RMSEA index.
The factor loadings all show sufficient loading. So we can immediately devote ourselves to the modification indices in order to understand the misspecification evident in the RMSEA.
perceived_threat_fit %>%
modificationindices(standardized = T, sort. = T)
lhs op rhs mi epc sepc.lv sepc.all sepc.nox
19 imueclt ~~ rlgueim 238.993 0.877 0.877 0.370 0.370
16 imbgeco ~~ imtcjob 238.993 0.909 0.909 0.361 0.361
17 imbgeco ~~ rlgueim 207.425 -0.747 -0.747 -0.293 -0.293
18 imueclt ~~ imtcjob 207.424 -0.945 -0.945 -0.403 -0.403
20 imtcjob ~~ rlgueim 1.848 -0.063 -0.063 -0.022 -0.022
15 imbgeco ~~ imueclt 1.848 -0.127 -0.127 -0.062 -0.062
The modification indices tell us that adjusting the residual covariance between items imueclt and rlgueim would have the largest effect on model fitting (in terms of the chi-square test statistic).
This is because some of the covariation of imueclt and rlgueim is due to sources other than the common factor.
Reasons: method effects, item wording, acquiescence, social desirability, unaccounted theoretical common causes.
We then modify our initial model and remove the residual covariance constraint between the two items, which is fixed at 0, and let it calculate freely.
perceived_threat_fit2 <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 31 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 47.224 31.440
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.502
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 8797.948 5161.721
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.704
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.995 0.994
Tucker-Lewis Index (TLI) 0.968 0.965
Robust Comparative Fit Index (CFI) 0.995
Robust Tucker-Lewis Index (TLI) 0.969
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -49045.074 -49045.074
Scaling correction factor 1.238
for the MLR correction
Loglikelihood unrestricted model (H1) -49021.462 -49021.462
Scaling correction factor 1.257
for the MLR correction
Akaike (AIC) 98116.148 98116.148
Bayesian (BIC) 98202.900 98202.900
Sample-size adjusted Bayesian (BIC) 98161.589 98161.589
Root Mean Square Error of Approximation:
RMSEA 0.089 0.072
90 Percent confidence interval - lower 0.068 0.055
90 Percent confidence interval - upper 0.111 0.091
P-value RMSEA <= 0.05 0.001 0.016
Robust RMSEA 0.088
90 Percent confidence interval - lower 0.064
90 Percent confidence interval - upper 0.116
Standardized Root Mean Square Residual:
SRMR 0.012 0.012
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.100 0.851
imueclt 0.963 0.019 50.389 0.000 2.022 0.785
imtcjob 0.760 0.017 46.031 0.000 1.596 0.694
rlgueim 0.559 0.018 30.307 0.000 1.174 0.537
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.848 0.072 11.715 0.000 0.848 0.287
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.979 0.032 154.352 0.000 4.979 2.019
.imueclt 4.696 0.034 139.327 0.000 4.696 1.823
.imtcjob 5.187 0.030 172.337 0.000 5.187 2.254
.rlgueim 5.318 0.029 185.807 0.000 5.318 2.431
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.673 0.091 18.481 0.000 1.673 0.275
.imueclt 2.551 0.097 26.176 0.000 2.551 0.384
.imtcjob 2.747 0.084 32.790 0.000 2.747 0.519
.rlgueim 3.409 0.086 39.542 0.000 3.409 0.712
PerceivedThret 4.408 0.126 34.979 0.000 1.000 1.000
The RMSEA is then back in our anticipated cut-off area and we can continue working with the measurement model.
perceived_threat_fit2 %>%
semPaths(
whatLabels = "std",
style = "mx",
layout = "tree",
edge.color = "black",
intercepts = F,
sizeMan = 9,
sizeLat = 10,
edge.label.cex = 0.7,
nCharNodes = 50
)
Finally, we want to display the mean structure of our model.
In practice, the only reason why a user would add intercept-formulas in the model syntax is because some constraints must be specified on them.
perceived_threat_mean <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x",
meanstructure = T
)
summary(
object = perceived_threat_mean,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 31 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 47.224 31.440
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.502
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 8797.948 5161.721
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.704
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.995 0.994
Tucker-Lewis Index (TLI) 0.968 0.965
Robust Comparative Fit Index (CFI) 0.995
Robust Tucker-Lewis Index (TLI) 0.969
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -49045.074 -49045.074
Scaling correction factor 1.238
for the MLR correction
Loglikelihood unrestricted model (H1) -49021.462 -49021.462
Scaling correction factor 1.257
for the MLR correction
Akaike (AIC) 98116.148 98116.148
Bayesian (BIC) 98202.900 98202.900
Sample-size adjusted Bayesian (BIC) 98161.589 98161.589
Root Mean Square Error of Approximation:
RMSEA 0.089 0.072
90 Percent confidence interval - lower 0.068 0.055
90 Percent confidence interval - upper 0.111 0.091
P-value RMSEA <= 0.05 0.001 0.016
Robust RMSEA 0.088
90 Percent confidence interval - lower 0.064
90 Percent confidence interval - upper 0.116
Standardized Root Mean Square Residual:
SRMR 0.012 0.012
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.100 0.851
imueclt 0.963 0.019 50.389 0.000 2.022 0.785
imtcjob 0.760 0.017 46.031 0.000 1.596 0.694
rlgueim 0.559 0.018 30.307 0.000 1.174 0.537
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.848 0.072 11.715 0.000 0.848 0.287
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.979 0.032 154.352 0.000 4.979 2.019
.imueclt 4.696 0.034 139.327 0.000 4.696 1.823
.imtcjob 5.187 0.030 172.337 0.000 5.187 2.254
.rlgueim 5.318 0.029 185.807 0.000 5.318 2.431
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.673 0.091 18.481 0.000 1.673 0.275
.imueclt 2.551 0.097 26.176 0.000 2.551 0.384
.imtcjob 2.747 0.084 32.790 0.000 2.747 0.519
.rlgueim 3.409 0.086 39.542 0.000 3.409 0.712
PerceivedThret 4.408 0.126 34.979 0.000 1.000 1.000
Are measurements actually comparable across groups/time?
Commen core: Measurement invariance is a property of a measurement instrument, implying that the instrument measures the same concept in the same way across subgroups of respondents or time points of data assessment.
Measurement invariance (MI) can be assessed with multiple-group CFA (MGCFA). Impose equality constrains on measurement parameters across groups/time (“fix them to be equal”).
Use a sequential testing strategy to test different levels of measurement invariance:
Configural measurement invariance
Equality constraints:
Equal structure: pattern of factors and relationships of indicators and factors is equal across groups
Implications:
Same construct exists across groups; no comparisons of estimates!
Metric measurement invariance
Equality constraints:
Equal structure + equal factor loadings across groups
\[\lambda^1 = \lambda^2 = \lambda^G\]
Implications:
Respondents from different groups attribute the same meaning to a construct; comparisons of regression coefficients, correlations, variances are valid.
Scalar measurement invariance
Equality constraints:
Equal structure + equal factor loadings + equal intercepts across groups
\[ \begin{split} \lambda^1 = \lambda^2 = \lambda^G \\ \tau^1 = \tau^2 = \tau^G \end{split} \]
Implications:
Respondents from different groups “use” the scale in a similar manner; comparison of latent means are valid
Result
How decide which level of measurement invariance is supported by the data?
Difference test for two nested models (m1 and m2)
\(\chi^2_d=\chi^2_{m1}-\chi^2_{m2}\ with\ df_{m1}-df_{m2}\)
Traditional \(\chi^2\) difference testing is sensitive to sample size!
Guidelines using alternative fit indices - Chen (2007): differences between a constrained model (m1) and a more liberal model (m2) are considered irrelevant when
N > 300: \(CFI(m1)-CFI(m2)\leq-.10\ and\ RMSEA(m1)-RMSEA(m2)\leq.015\)
N \(\leq\) 300: \(CFI(m1)-CFI(m2)\leq-.005\ and\ RMSEA(m1)-RMSEA(m2)\leq.010\)
Do the mean levels of endorsement of universalism values differ across the CZ, DE, and GB?
Before we can approach a common model across all groups, we have to check whether the envisaged measurement model can be measured properly in each group.
ESS07_countries <- group_split(ESS07, country) %>%
# optional for better display
set_names(unique(ESS07$country))
We have now split the entire data set into three individual data sets according to the respective countries. These data sets are now checked individually as a measurement model.
Reference indicator method
universalism_fit_countries <- ESS07_countries %>%
map(~ cfa(
model = "Universalism =~ ipeqopt + ipudrst + impenv",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
universalism_fit_countries %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 24 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 405.539 263.905
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.537
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -5999.450 -5999.450
Loglikelihood unrestricted model (H1) -5999.450 -5999.450
Akaike (AIC) 12016.901 12016.901
Bayesian (BIC) 12064.054 12064.054
Sample-size adjusted Bayesian (BIC) 12035.464 12035.464
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.603 0.568
ipudrst 0.949 0.106 8.917 0.000 0.573 0.525
impenv 1.085 0.121 8.991 0.000 0.655 0.624
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
Universalism 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.763 0.061 12.569 0.000 0.763 0.677
.ipudrst 0.863 0.056 15.343 0.000 0.863 0.725
.impenv 0.673 0.056 11.989 0.000 0.673 0.611
Universalism 0.364 0.053 6.882 0.000 1.000 1.000
$DE
lavaan 0.6-12 ended normally after 26 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 484.674 330.007
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.469
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -10537.895 -10537.895
Loglikelihood unrestricted model (H1) -10537.895 -10537.895
Akaike (AIC) 21093.791 21093.791
Bayesian (BIC) 21146.803 21146.803
Sample-size adjusted Bayesian (BIC) 21118.207 21118.207
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.490 0.513
ipudrst 0.967 0.103 9.408 0.000 0.474 0.539
impenv 0.919 0.095 9.675 0.000 0.451 0.473
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
Universalism 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.675 0.043 15.616 0.000 0.675 0.737
.ipudrst 0.549 0.034 16.238 0.000 0.549 0.709
.impenv 0.705 0.034 20.767 0.000 0.705 0.776
Universalism 0.241 0.033 7.189 0.000 1.000 1.000
$GB
lavaan 0.6-12 ended normally after 27 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 399.509 284.623
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.404
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -7712.332 -7712.332
Loglikelihood unrestricted model (H1) -7712.332 -7712.332
Akaike (AIC) 15442.664 15442.664
Bayesian (BIC) 15492.023 15492.023
Sample-size adjusted Bayesian (BIC) 15463.431 15463.431
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.560 0.530
ipudrst 1.263 0.163 7.745 0.000 0.707 0.670
impenv 0.765 0.085 9.011 0.000 0.429 0.396
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
Universalism 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.803 0.055 14.701 0.000 0.803 0.719
.ipudrst 0.614 0.072 8.558 0.000 0.614 0.551
.impenv 0.988 0.044 22.454 0.000 0.988 0.843
Universalism 0.314 0.051 6.179 0.000 1.000 1.000
In all countries the measurement model reaches an acceptable form. In the next step, we can calculate all countries without constraints in a model and see whether there is an adequate fit here as well.
Fixed factor method
universalism_fit_countries2 <- ESS07_countries %>%
map(~ cfa(
model = "
uni =~ NA*ipeqopt + ipudrst + impenv
uni ~~ 1*uni
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
universalism_fit_countries2 %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 15 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 405.539 263.905
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.537
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) 1.000
Robust Tucker-Lewis Index (TLI) 1.000
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -5999.450 -5999.450
Loglikelihood unrestricted model (H1) -5999.450 -5999.450
Akaike (AIC) 12016.901 12016.901
Bayesian (BIC) 12064.054 12064.054
Sample-size adjusted Bayesian (BIC) 12035.464 12035.464
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.603 0.044 13.763 0.000 0.603 0.568
ipudrst 0.573 0.045 12.689 0.000 0.573 0.525
impenv 0.655 0.046 14.238 0.000 0.655 0.624
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.763 0.061 12.569 0.000 0.763 0.677
.ipudrst 0.863 0.056 15.343 0.000 0.863 0.725
.impenv 0.673 0.056 11.989 0.000 0.673 0.611
$DE
lavaan 0.6-12 ended normally after 17 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 484.674 330.007
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.469
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -10537.895 -10537.895
Loglikelihood unrestricted model (H1) -10537.895 -10537.895
Akaike (AIC) 21093.791 21093.791
Bayesian (BIC) 21146.803 21146.803
Sample-size adjusted Bayesian (BIC) 21118.207 21118.207
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.490 0.034 14.379 0.000 0.490 0.513
ipudrst 0.474 0.032 14.709 0.000 0.474 0.539
impenv 0.451 0.032 14.237 0.000 0.451 0.473
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.675 0.043 15.616 0.000 0.675 0.737
.ipudrst 0.549 0.034 16.238 0.000 0.549 0.709
.impenv 0.705 0.034 20.767 0.000 0.705 0.776
$GB
lavaan 0.6-12 ended normally after 17 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 399.509 284.623
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.404
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -7712.332 -7712.332
Loglikelihood unrestricted model (H1) -7712.332 -7712.332
Akaike (AIC) 15442.664 15442.664
Bayesian (BIC) 15492.023 15492.023
Sample-size adjusted Bayesian (BIC) 15463.431 15463.431
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.560 0.045 12.359 0.000 0.560 0.530
ipudrst 0.707 0.052 13.486 0.000 0.707 0.670
impenv 0.429 0.041 10.552 0.000 0.429 0.396
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.803 0.055 14.701 0.000 0.803 0.719
.ipudrst 0.614 0.072 8.558 0.000 0.614 0.551
.impenv 0.988 0.044 22.454 0.000 0.988 0.843
Since the configurale model has no constraints, we only have to name the groups to be compared. This happens in Lavaan mainly via the function argument group = “grouping_variable”. In the more detailed form, we can also name the groups when specifying the model.
Reference indicator method
universalism_fit_config <- cfa(
model = "
group: [CZ]
uni =~ ipeqopt + ipudrst + impenv
group: [DE]
uni =~ ipeqopt + ipudrst + impenv
group: [GB]
uni =~ ipeqopt + ipudrst + impenv
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
Lavaan carries out the model specification of the groups with the argument group = “grouping_variable” automatically, unless we want to carry out our own specification. The result is the same.
universalism_fit_config <- cfa(
model = "uni =~ ipeqopt + ipudrst + impenv",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
Nevertheless, it makes sense to keep control of the desired restrictions at the beginning and also in the further course.
summary(
object = universalism_fit_config,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 71 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Test statistic for each group:
CZ 0.000 0.000
DE 0.000 0.000
GB 0.000 0.000
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24249.678 -24249.678
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Akaike (AIC) 48553.355 48553.355
Bayesian (BIC) 48733.531 48733.531
Sample-size adjusted Bayesian (BIC) 48647.732 48647.732
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.603 0.568
ipudrst 0.949 0.106 8.917 0.000 0.573 0.525
impenv 1.085 0.121 8.991 0.000 0.655 0.624
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.763 0.061 12.569 0.000 0.763 0.677
.ipudrst 0.863 0.056 15.343 0.000 0.863 0.725
.impenv 0.673 0.056 11.989 0.000 0.673 0.611
uni 0.364 0.053 6.882 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.490 0.513
ipudrst 0.967 0.103 9.408 0.000 0.474 0.539
impenv 0.919 0.095 9.675 0.000 0.451 0.473
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.675 0.043 15.616 0.000 0.675 0.737
.ipudrst 0.549 0.034 16.238 0.000 0.549 0.709
.impenv 0.705 0.034 20.767 0.000 0.705 0.776
uni 0.241 0.033 7.189 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.560 0.530
ipudrst 1.263 0.163 7.745 0.000 0.707 0.670
impenv 0.765 0.085 9.011 0.000 0.429 0.396
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.803 0.055 14.701 0.000 0.803 0.719
.ipudrst 0.614 0.072 8.558 0.000 0.614 0.551
.impenv 0.988 0.044 22.454 0.000 0.988 0.843
uni 0.314 0.051 6.179 0.000 1.000 1.000
The mean structure is estimated as the default: intercepts are unconstrained, latent means are fixed to zero.
Result:
Again, we see that the model works well.
Fixed factor method
universalism_fit_config2 <- cfa(
model = "
group: [CZ]
uni =~ NA*ipeqopt + ipudrst + impenv
uni ~~ 1*uni
group: [DE]
uni =~ NA*ipeqopt + ipudrst + impenv
uni ~~ 1*uni
group: [GB]
uni =~ NA*ipeqopt + ipudrst + impenv
uni ~~ 1*uni
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = universalism_fit_config2,
fit.measures = T,
standardized = T
)
lavaan 0.6-12 ended normally after 50 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Test statistic for each group:
CZ 0.000 0.000
DE 0.000 0.000
GB 0.000 0.000
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24249.678 -24249.678
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Akaike (AIC) 48553.355 48553.355
Bayesian (BIC) 48733.531 48733.531
Sample-size adjusted Bayesian (BIC) 48647.732 48647.732
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.603 0.044 13.763 0.000 0.603 0.568
ipudrst 0.573 0.045 12.689 0.000 0.573 0.525
impenv 0.655 0.046 14.238 0.000 0.655 0.624
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.763 0.061 12.569 0.000 0.763 0.677
.ipudrst 0.863 0.056 15.343 0.000 0.863 0.725
.impenv 0.673 0.056 11.989 0.000 0.673 0.611
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.490 0.034 14.379 0.000 0.490 0.513
ipudrst 0.474 0.032 14.709 0.000 0.474 0.539
impenv 0.451 0.032 14.237 0.000 0.451 0.473
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.675 0.043 15.616 0.000 0.675 0.737
.ipudrst 0.549 0.034 16.238 0.000 0.549 0.709
.impenv 0.705 0.034 20.767 0.000 0.705 0.776
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 0.560 0.045 12.359 0.000 0.560 0.530
ipudrst 0.707 0.052 13.486 0.000 0.707 0.670
impenv 0.429 0.041 10.552 0.000 0.429 0.396
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.803 0.055 14.701 0.000 0.803 0.719
.ipudrst 0.614 0.072 8.558 0.000 0.614 0.551
.impenv 0.988 0.044 22.454 0.000 0.988 0.843
Next we want to check whether there is also a metric measurement invariance.
Since we have to equate the factor loadings for the metric measurement invariance (constrains), we have to work with labels in front of the parameters.
Reference indicator method
universalism_fit_metric <- cfa(
model = "
group: [CZ]
uni =~ ipeqopt + a*ipudrst + b*impenv
group: [DE]
uni =~ ipeqopt + a*ipudrst + b*impenv
group: [GB]
uni =~ ipeqopt + a*ipudrst + b*impenv
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
Here it can be clearly seen that we use the reference indicator methods and that only the factor loadings of the second and third items have to be equated across the groups. For the first item we use the label “a” across all groups and for the second item we use the label “b” to indicate to lavaan that these parameters are assumed to have the same value across the groups when calculating the model.
Here, too, the model specification can be simplified as required with the argument group.equal = “loadings”.
universalism_fit_metric <- cfa(
model = "uni =~ ipeqopt + ipudrst + impenv",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = "loadings",
# optional if there are missing values
missing = "fiml.x"
)
However, Lavaan automatically assigns the labels .p[number]., although the effect is the same.
summary(
object = universalism_fit_metric,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 38 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of equality constraints 4
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 21.133 16.446
Degrees of freedom 4 4
P-value (Chi-square) 0.000 0.002
Scaling correction factor 1.285
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 7.515 5.848
DE 0.684 0.533
GB 12.934 10.065
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.987 0.986
Tucker-Lewis Index (TLI) 0.970 0.968
Robust Comparative Fit Index (CFI) 0.987
Robust Tucker-Lewis Index (TLI) 0.972
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24260.244 -24260.244
Scaling correction factor 1.144
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48566.488 48566.488
Bayesian (BIC) 48719.971 48719.971
Sample-size adjusted Bayesian (BIC) 48646.884 48646.884
Root Mean Square Error of Approximation:
RMSEA 0.047 0.040
90 Percent confidence interval - lower 0.028 0.023
90 Percent confidence interval - upper 0.067 0.058
P-value RMSEA <= 0.05 0.560 0.800
Robust RMSEA 0.045
90 Percent confidence interval - lower 0.024
90 Percent confidence interval - upper 0.069
Standardized Root Mean Square Residual:
SRMR 0.017 0.017
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.621 0.583
ipudrst (.p2.) 1.029 0.068 15.174 0.000 0.639 0.579
impenv (.p3.) 0.910 0.057 16.014 0.000 0.565 0.547
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.261
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.850
.impenv 4.688 0.028 166.708 0.000 4.688 4.536
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.748 0.053 14.147 0.000 0.748 0.660
.ipudrst 0.811 0.050 16.107 0.000 0.811 0.665
.impenv 0.749 0.044 16.920 0.000 0.749 0.701
uni 0.386 0.038 10.022 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.480 0.502
ipudrst (.p2.) 1.029 0.068 15.174 0.000 0.494 0.560
impenv (.p3.) 0.910 0.057 16.014 0.000 0.437 0.460
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.362
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.625
.impenv 4.996 0.018 271.054 0.000 4.996 5.254
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.683 0.039 17.416 0.000 0.683 0.748
.ipudrst 0.534 0.031 17.394 0.000 0.534 0.686
.impenv 0.713 0.031 23.184 0.000 0.713 0.789
uni 0.230 0.024 9.724 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.580 0.550
ipudrst (.p2.) 1.029 0.068 15.174 0.000 0.597 0.574
impenv (.p3.) 0.910 0.057 16.014 0.000 0.528 0.480
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.731
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.527
.impenv 4.849 0.026 188.959 0.000 4.849 4.406
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.777 0.046 16.714 0.000 0.777 0.698
.ipudrst 0.728 0.046 16.001 0.000 0.728 0.671
.impenv 0.932 0.042 22.197 0.000 0.932 0.769
uni 0.337 0.036 9.238 0.000 1.000 1.000
Results:
Fixed factor method
Note! Only in one group does the variance of the latent factor for model identification have to be fixed at 1. In the other groups, factor variance is freely estimated.
universalism_fit_metric2 <- cfa(
model = "
group: [CZ]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
uni ~~ 1*uni
group: [DE]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
uni ~~ NA*uni
group: [GB]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
uni ~~ NA*uni
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = universalism_fit_metric2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 43 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 29
Number of equality constraints 6
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 21.133 16.446
Degrees of freedom 4 4
P-value (Chi-square) 0.000 0.002
Scaling correction factor 1.285
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 7.515 5.848
DE 0.684 0.533
GB 12.934 10.065
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.987 0.986
Tucker-Lewis Index (TLI) 0.970 0.968
Robust Comparative Fit Index (CFI) 0.987
Robust Tucker-Lewis Index (TLI) 0.972
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24260.244 -24260.244
Scaling correction factor 1.065
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48566.488 48566.488
Bayesian (BIC) 48719.971 48719.971
Sample-size adjusted Bayesian (BIC) 48646.884 48646.884
Root Mean Square Error of Approximation:
RMSEA 0.047 0.040
90 Percent confidence interval - lower 0.028 0.023
90 Percent confidence interval - upper 0.067 0.058
P-value RMSEA <= 0.05 0.560 0.800
Robust RMSEA 0.045
90 Percent confidence interval - lower 0.024
90 Percent confidence interval - upper 0.069
Standardized Root Mean Square Residual:
SRMR 0.017 0.017
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.621 0.031 20.044 0.000 0.621 0.583
ipudrst (b) 0.639 0.031 20.732 0.000 0.639 0.579
impenv (c) 0.565 0.032 17.469 0.000 0.565 0.547
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.261
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.850
.impenv 4.688 0.028 166.708 0.000 4.688 4.536
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.748 0.053 14.147 0.000 0.748 0.660
.ipudrst 0.811 0.050 16.107 0.000 0.811 0.665
.impenv 0.749 0.044 16.920 0.000 0.749 0.701
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.621 0.031 20.044 0.000 0.480 0.502
ipudrst (b) 0.639 0.031 20.732 0.000 0.494 0.560
impenv (c) 0.565 0.032 17.469 0.000 0.437 0.460
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.362
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.625
.impenv 4.996 0.018 271.054 0.000 4.996 5.254
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.597 0.059 10.071 0.000 1.000 1.000
.ipeqopt 0.683 0.039 17.416 0.000 0.683 0.748
.ipudrst 0.534 0.031 17.394 0.000 0.534 0.686
.impenv 0.713 0.031 23.184 0.000 0.713 0.789
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.621 0.031 20.044 0.000 0.580 0.550
ipudrst (b) 0.639 0.031 20.732 0.000 0.597 0.574
impenv (c) 0.565 0.032 17.469 0.000 0.528 0.480
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.731
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.527
.impenv 4.849 0.026 188.959 0.000 4.849 4.406
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.873 0.096 9.141 0.000 1.000 1.000
.ipeqopt 0.777 0.046 16.714 0.000 0.777 0.698
.ipudrst 0.728 0.046 16.001 0.000 0.728 0.671
.impenv 0.932 0.042 22.197 0.000 0.932 0.769
As a final step, we want to see if there is scalar measurement invariance across groups.
For this we have to equate the intercepts in the model specification. As previously shown, Lavaan works syntactically with variable~1 in order to be able to select the intercept of the respective item. In the following we can equate the Intercepts value with a label across all groups.
Reference indicator method
universalism_fit_scalar <- cfa(
model = "
group: [CZ]
uni =~ ipeqopt + a*ipudrst + b*impenv
ipeqopt ~ c*1
ipudrst ~ d*1
impenv ~ e*1
uni ~ 0*1
group: [DE]
uni =~ ipeqopt + a*ipudrst + b*impenv
ipeqopt ~ c*1
ipudrst ~ d*1
impenv ~ e*1
uni ~ NA*1
group: [GB]
uni =~ ipeqopt + a*ipudrst + b*impenv
ipeqopt ~ c*1
ipudrst ~ d*1
impenv ~ e*1
uni ~ NA*1
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
Again, there is a function argument that allows a simple calculation of the scalar measurement invariance. If we add intercepts in the argument group.equal = c(“loadings”, “intercepts”), all intercepts are equated across the groups.
universalism_fit_scalar <- cfa(
model = "uni =~ ipeqopt + ipudrst + impenv",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = universalism_fit_scalar,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 46 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 29
Number of equality constraints 10
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 77.073 65.804
Degrees of freedom 8 8
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.171
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 51.362 43.853
DE 17.278 14.752
GB 8.433 7.200
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.946 0.933
Tucker-Lewis Index (TLI) 0.939 0.925
Robust Comparative Fit Index (CFI) 0.947
Robust Tucker-Lewis Index (TLI) 0.940
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24288.214 -24288.214
Scaling correction factor 0.920
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48614.428 48614.428
Bayesian (BIC) 48741.219 48741.219
Sample-size adjusted Bayesian (BIC) 48680.842 48680.842
Root Mean Square Error of Approximation:
RMSEA 0.067 0.061
90 Percent confidence interval - lower 0.053 0.049
90 Percent confidence interval - upper 0.081 0.074
P-value RMSEA <= 0.05 0.019 0.069
Robust RMSEA 0.066
90 Percent confidence interval - lower 0.052
90 Percent confidence interval - upper 0.081
Standardized Root Mean Square Residual:
SRMR 0.032 0.032
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.609 0.571
ipudrst (.p2.) 1.135 0.062 18.367 0.000 0.692 0.622
impenv (.p3.) 0.791 0.038 20.559 0.000 0.482 0.469
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.p8.) 4.568 0.026 174.343 0.000 4.568 4.284
.ipudrst (.p9.) 4.295 0.029 146.756 0.000 4.295 3.860
.impenv (.10.) 4.581 0.023 197.095 0.000 4.581 4.461
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.766 0.050 15.239 0.000 0.766 0.674
.ipudrst 0.760 0.050 15.312 0.000 0.760 0.614
.impenv 0.822 0.040 20.680 0.000 0.822 0.780
uni 0.371 0.035 10.673 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.474 0.495
ipudrst (.p2.) 1.135 0.062 18.367 0.000 0.538 0.607
impenv (.p3.) 0.791 0.038 20.559 0.000 0.375 0.397
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.p8.) 4.568 0.026 174.343 0.000 4.568 4.770
.ipudrst (.p9.) 4.295 0.029 146.756 0.000 4.295 4.846
.impenv (.10.) 4.581 0.023 197.095 0.000 4.581 4.855
uni 0.568 0.030 18.976 0.000 1.198 1.198
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.693 0.041 17.104 0.000 0.693 0.755
.ipudrst 0.496 0.033 15.101 0.000 0.496 0.632
.impenv 0.750 0.031 24.267 0.000 0.750 0.842
uni 0.224 0.021 10.686 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt 1.000 0.582 0.550
ipudrst (.p2.) 1.135 0.062 18.367 0.000 0.661 0.629
impenv (.p3.) 0.791 0.038 20.559 0.000 0.460 0.423
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.p8.) 4.568 0.026 174.343 0.000 4.568 4.315
.ipudrst (.p9.) 4.295 0.029 146.756 0.000 4.295 4.088
.impenv (.10.) 4.581 0.023 197.095 0.000 4.581 4.209
uni 0.384 0.031 12.280 0.000 0.659 0.659
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.782 0.044 17.679 0.000 0.782 0.698
.ipudrst 0.667 0.045 14.793 0.000 0.667 0.604
.impenv 0.973 0.041 23.638 0.000 0.973 0.821
uni 0.339 0.032 10.471 0.000 1.000 1.000
Results:
Fixed factor method
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
universalism_fit_scalar2 <- cfa(
model = "
group: [CZ]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ f*1
uni ~ 0*1
uni ~~ 1*uni
group: [DE]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ f*1
uni ~ NA*1
uni ~~ NA*uni
group: [GB]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ f*1
uni ~ NA*1
uni ~~ NA*uni
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = universalism_fit_scalar2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 48 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 31
Number of equality constraints 12
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 77.073 65.804
Degrees of freedom 8 8
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.171
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 51.362 43.852
DE 17.278 14.752
GB 8.433 7.200
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.946 0.933
Tucker-Lewis Index (TLI) 0.939 0.925
Robust Comparative Fit Index (CFI) 0.947
Robust Tucker-Lewis Index (TLI) 0.940
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24288.214 -24288.214
Scaling correction factor 0.860
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48614.428 48614.428
Bayesian (BIC) 48741.219 48741.219
Sample-size adjusted Bayesian (BIC) 48680.842 48680.842
Root Mean Square Error of Approximation:
RMSEA 0.067 0.061
90 Percent confidence interval - lower 0.053 0.049
90 Percent confidence interval - upper 0.081 0.074
P-value RMSEA <= 0.05 0.019 0.069
Robust RMSEA 0.066
90 Percent confidence interval - lower 0.052
90 Percent confidence interval - upper 0.081
Standardized Root Mean Square Residual:
SRMR 0.032 0.032
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.609 0.029 21.345 0.000 0.609 0.571
ipudrst (b) 0.692 0.029 23.535 0.000 0.692 0.622
impenv (c) 0.482 0.027 17.840 0.000 0.482 0.469
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.568 0.026 174.343 0.000 4.568 4.284
.ipudrst (e) 4.295 0.029 146.756 0.000 4.295 3.860
.impenv (f) 4.581 0.023 197.095 0.000 4.581 4.461
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.766 0.050 15.239 0.000 0.766 0.674
.ipudrst 0.760 0.050 15.312 0.000 0.760 0.614
.impenv 0.822 0.040 20.680 0.000 0.822 0.780
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.609 0.029 21.345 0.000 0.474 0.495
ipudrst (b) 0.692 0.029 23.535 0.000 0.538 0.607
impenv (c) 0.482 0.027 17.840 0.000 0.375 0.397
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.568 0.026 174.343 0.000 4.568 4.770
.ipudrst (e) 4.295 0.029 146.756 0.000 4.295 4.846
.impenv (f) 4.581 0.023 197.095 0.000 4.581 4.855
uni 0.932 0.050 18.530 0.000 1.198 1.198
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.605 0.060 10.007 0.000 1.000 1.000
.ipeqopt 0.693 0.041 17.104 0.000 0.693 0.755
.ipudrst 0.496 0.033 15.101 0.000 0.496 0.632
.impenv 0.750 0.031 24.267 0.000 0.750 0.842
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.609 0.029 21.345 0.000 0.582 0.550
ipudrst (b) 0.692 0.029 23.535 0.000 0.661 0.629
impenv (c) 0.482 0.027 17.840 0.000 0.460 0.423
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.568 0.026 174.343 0.000 4.568 4.315
.ipudrst (e) 4.295 0.029 146.756 0.000 4.295 4.088
.impenv (f) 4.581 0.023 197.095 0.000 4.581 4.209
uni 0.630 0.050 12.658 0.000 0.659 0.659
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.913 0.098 9.307 0.000 1.000 1.000
.ipeqopt 0.782 0.044 17.679 0.000 0.782 0.698
.ipudrst 0.667 0.045 14.793 0.000 0.667 0.604
.impenv 0.973 0.041 23.638 0.000 0.973 0.821
Finally, we want to check whether the respective models with tightened measurement invariance do not show any significant deterioration in the data fitting and thus do not falsify the assumption of the corresponding measurement invariances.
compFit.universalism <- compareFit(
scalar = universalism_fit_scalar,
metric = universalism_fit_metric,
config = universalism_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.universalism,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 48553 48734 0.000
metric 4 48566 48720 21.133 16.446 4 0.002475 **
scalar 8 48614 48741 77.073 52.897 4 8.954e-11 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 16.446 4 .002 .040 .986 .968
scalar 65.804 8 .000 .061 .933 .925
srmr aic bic
config .000† 48553.355† 48733.531
metric .017 48566.488 48719.971†
scalar .032 48614.428 48741.219
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 4 0.040 -0.014 -0.032 0.017 13.133
scalar - metric 4 0.021 -0.052 -0.043 0.015 47.940
bic
metric - config -13.559
scalar - metric 21.247
Results:
Fixed factor method
compFit.universalism2 <- compareFit(
scalar = universalism_fit_scalar2,
metric = universalism_fit_metric2,
config = universalism_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.universalism2,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 48553 48734 0.000
metric 4 48566 48720 21.133 16.446 4 0.002475 **
scalar 8 48614 48741 77.073 52.897 4 8.954e-11 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 16.446 4 .002 .040 .986 .968
scalar 65.804 8 .000 .061 .933 .925
srmr aic bic
config .000† 48553.355† 48733.531
metric .017 48566.488 48719.971†
scalar .032 48614.428 48741.219
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 4 0.040 -0.014 -0.032 0.017 13.133
scalar - metric 4 0.021 -0.052 -0.043 0.015 47.940
bic
metric - config -13.559
scalar - metric 21.247
Reference indicator method
tradition_conformity_fit_countries <- ESS07_countries %>%
map(~ cfa(
model = "TraditionConformity =~ imptrad + ipfrule + ipbhprp",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
tradition_conformity_fit_countries %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 25 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 427.429 278.850
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.533
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -6433.005 -6433.005
Loglikelihood unrestricted model (H1) -6433.005 -6433.005
Akaike (AIC) 12884.010 12884.010
Bayesian (BIC) 12931.163 12931.163
Sample-size adjusted Bayesian (BIC) 12902.573 12902.573
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.629 0.493
ipfrule 1.011 0.110 9.210 0.000 0.636 0.570
ipbhprp 1.253 0.139 8.991 0.000 0.789 0.673
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.235 0.074 16.692 0.000 1.235 0.757
.ipfrule 0.843 0.059 14.169 0.000 0.843 0.675
.ipbhprp 0.753 0.079 9.542 0.000 0.753 0.548
TraditnCnfrmty 0.396 0.061 6.471 0.000 1.000 1.000
$DE
lavaan 0.6-12 ended normally after 29 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 743.574 618.238
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.203
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -13453.225 -13453.225
Loglikelihood unrestricted model (H1) -13453.225 -13453.225
Akaike (AIC) 26924.451 26924.451
Bayesian (BIC) 26977.462 26977.462
Sample-size adjusted Bayesian (BIC) 26948.867 26948.867
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.624 0.455
ipfrule 1.310 0.097 13.549 0.000 0.817 0.584
ipbhprp 1.363 0.108 12.614 0.000 0.850 0.652
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.493 0.054 27.834 0.000 1.493 0.793
.ipfrule 1.293 0.062 20.968 0.000 1.293 0.659
.ipbhprp 0.980 0.064 15.297 0.000 0.980 0.575
TraditnCnfrmty 0.389 0.045 8.618 0.000 1.000 1.000
$GB
lavaan 0.6-12 ended normally after 28 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 550.406 433.960
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.268
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) 1.000
Robust Tucker-Lewis Index (TLI) 1.000
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -9035.986 -9035.986
Loglikelihood unrestricted model (H1) -9035.986 -9035.986
Akaike (AIC) 18089.972 18089.972
Bayesian (BIC) 18139.332 18139.332
Sample-size adjusted Bayesian (BIC) 18110.739 18110.739
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.708 0.492
ipfrule 1.194 0.101 11.855 0.000 0.845 0.591
ipbhprp 1.192 0.103 11.566 0.000 0.844 0.656
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.572 0.067 23.591 0.000 1.572 0.758
.ipfrule 1.331 0.082 16.216 0.000 1.331 0.651
.ipbhprp 0.943 0.075 12.574 0.000 0.943 0.570
TraditnCnfrmty 0.501 0.063 7.975 0.000 1.000 1.000
Fixed factor method
tradition_conformity_fit_countries2 <- ESS07_countries %>%
map(~ cfa(
model = "
TraditionConformity =~ NA*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ 1*TraditionConformity
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
tradition_conformity_fit_countries2 %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 17 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 427.429 278.850
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.533
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -6433.005 -6433.005
Loglikelihood unrestricted model (H1) -6433.005 -6433.005
Akaike (AIC) 12884.010 12884.010
Bayesian (BIC) 12931.163 12931.163
Sample-size adjusted Bayesian (BIC) 12902.573 12902.573
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.629 0.049 12.941 0.000 0.629 0.493
ipfrule 0.636 0.047 13.681 0.000 0.636 0.570
ipbhprp 0.789 0.052 15.180 0.000 0.789 0.673
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.235 0.074 16.692 0.000 1.235 0.757
.ipfrule 0.843 0.059 14.169 0.000 0.843 0.675
.ipbhprp 0.753 0.079 9.542 0.000 0.753 0.548
$DE
lavaan 0.6-12 ended normally after 21 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 743.574 618.238
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.203
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -13453.225 -13453.225
Loglikelihood unrestricted model (H1) -13453.225 -13453.225
Akaike (AIC) 26924.451 26924.451
Bayesian (BIC) 26977.462 26977.462
Sample-size adjusted Bayesian (BIC) 26948.867 26948.867
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.624 0.036 17.236 0.000 0.624 0.455
ipfrule 0.817 0.039 21.109 0.000 0.817 0.584
ipbhprp 0.850 0.039 21.805 0.000 0.850 0.652
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.493 0.054 27.834 0.000 1.493 0.793
.ipfrule 1.293 0.062 20.968 0.000 1.293 0.659
.ipbhprp 0.980 0.064 15.297 0.000 0.980 0.575
$GB
lavaan 0.6-12 ended normally after 21 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 9
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Model Test Baseline Model:
Test statistic 550.406 433.960
Degrees of freedom 3 3
P-value 0.000 0.000
Scaling correction factor 1.268
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) 1.000
Robust Tucker-Lewis Index (TLI) 1.000
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -9035.986 -9035.986
Loglikelihood unrestricted model (H1) -9035.986 -9035.986
Akaike (AIC) 18089.972 18089.972
Bayesian (BIC) 18139.332 18139.332
Sample-size adjusted Bayesian (BIC) 18110.739 18110.739
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.708 0.044 15.949 0.000 0.708 0.492
ipfrule 0.845 0.049 17.416 0.000 0.845 0.591
ipbhprp 0.844 0.046 18.324 0.000 0.844 0.656
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.572 0.067 23.591 0.000 1.572 0.758
.ipfrule 1.331 0.082 16.216 0.000 1.331 0.651
.ipbhprp 0.943 0.075 12.574 0.000 0.943 0.570
Reference indicator method
tradition_conformity_fit_config <- cfa(
model = "TraditionConformity =~ imptrad + ipfrule + ipbhprp",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_config,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 83 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Test statistic for each group:
CZ 0.000 0.000
DE 0.000 0.000
GB 0.000 0.000
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28922.216 -28922.216
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Akaike (AIC) 57898.433 57898.433
Bayesian (BIC) 58078.609 58078.609
Sample-size adjusted Bayesian (BIC) 57992.810 57992.810
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.629 0.493
ipfrule 1.011 0.110 9.210 0.000 0.636 0.570
ipbhprp 1.253 0.139 8.991 0.000 0.789 0.673
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.235 0.074 16.692 0.000 1.235 0.757
.ipfrule 0.843 0.059 14.169 0.000 0.843 0.675
.ipbhprp 0.753 0.079 9.542 0.000 0.753 0.548
TraditnCnfrmty 0.396 0.061 6.471 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.624 0.455
ipfrule 1.310 0.097 13.549 0.000 0.817 0.584
ipbhprp 1.363 0.108 12.614 0.000 0.850 0.652
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.493 0.054 27.834 0.000 1.493 0.793
.ipfrule 1.293 0.062 20.968 0.000 1.293 0.659
.ipbhprp 0.980 0.064 15.297 0.000 0.980 0.575
TraditnCnfrmty 0.389 0.045 8.618 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.708 0.492
ipfrule 1.194 0.101 11.855 0.000 0.845 0.591
ipbhprp 1.192 0.103 11.566 0.000 0.844 0.656
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.572 0.067 23.591 0.000 1.572 0.758
.ipfrule 1.331 0.082 16.216 0.000 1.331 0.651
.ipbhprp 0.943 0.075 12.574 0.000 0.943 0.570
TraditnCnfrmty 0.501 0.063 7.975 0.000 1.000 1.000
Fixed factor method
tradition_conformity_fit_config2 <- cfa(
model = "
group: [CZ]
TraditionConformity =~ NA*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ 1*TraditionConformity
group: [DE]
TraditionConformity =~ NA*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ 1*TraditionConformity
group: [GB]
TraditionConformity =~ NA*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ 1*TraditionConformity
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_config2,
fit.measures = T,
standardized = T
)
lavaan 0.6-12 ended normally after 73 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 0.000 0.000
Degrees of freedom 0 0
Test statistic for each group:
CZ 0.000 0.000
DE 0.000 0.000
GB 0.000 0.000
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 1.000 1.000
Tucker-Lewis Index (TLI) 1.000 1.000
Robust Comparative Fit Index (CFI) NA
Robust Tucker-Lewis Index (TLI) NA
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28922.216 -28922.216
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Akaike (AIC) 57898.433 57898.433
Bayesian (BIC) 58078.609 58078.609
Sample-size adjusted Bayesian (BIC) 57992.810 57992.810
Root Mean Square Error of Approximation:
RMSEA 0.000 0.000
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.000 0.000
P-value RMSEA <= 0.05 NA NA
Robust RMSEA 0.000
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.000
Standardized Root Mean Square Residual:
SRMR 0.000 0.000
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.629 0.049 12.941 0.000 0.629 0.493
ipfrule 0.636 0.047 13.681 0.000 0.636 0.570
ipbhprp 0.789 0.052 15.180 0.000 0.789 0.673
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.235 0.074 16.692 0.000 1.235 0.757
.ipfrule 0.843 0.059 14.169 0.000 0.843 0.675
.ipbhprp 0.753 0.079 9.542 0.000 0.753 0.548
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.624 0.036 17.236 0.000 0.624 0.455
ipfrule 0.817 0.039 21.109 0.000 0.817 0.584
ipbhprp 0.850 0.039 21.805 0.000 0.850 0.652
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.493 0.054 27.834 0.000 1.493 0.793
.ipfrule 1.293 0.062 20.968 0.000 1.293 0.659
.ipbhprp 0.980 0.064 15.297 0.000 0.980 0.575
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 0.708 0.044 15.949 0.000 0.708 0.492
ipfrule 0.845 0.049 17.416 0.000 0.845 0.591
ipbhprp 0.844 0.046 18.324 0.000 0.844 0.656
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.572 0.067 23.591 0.000 1.572 0.758
.ipfrule 1.331 0.082 16.216 0.000 1.331 0.651
.ipbhprp 0.943 0.075 12.574 0.000 0.943 0.570
Reference indicator method
tradition_conformity_fit_metric <- cfa(
model = "TraditionConformity =~ imptrad + ipfrule + ipbhprp",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = "loadings",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_metric,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 54 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 27
Number of equality constraints 4
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 6.366 5.479
Degrees of freedom 4 4
P-value (Chi-square) 0.173 0.242
Scaling correction factor 1.162
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 3.702 3.187
DE 1.782 1.534
GB 0.882 0.759
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.999 0.999
Tucker-Lewis Index (TLI) 0.997 0.997
Robust Comparative Fit Index (CFI) 0.999
Robust Tucker-Lewis Index (TLI) 0.998
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28925.400 -28925.400
Scaling correction factor 0.855
for the MLR correction
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Scaling correction factor 1.027
for the MLR correction
Akaike (AIC) 57896.799 57896.799
Bayesian (BIC) 58050.282 58050.282
Sample-size adjusted Bayesian (BIC) 57977.195 57977.195
Root Mean Square Error of Approximation:
RMSEA 0.017 0.014
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.042 0.037
P-value RMSEA <= 0.05 0.990 0.997
Robust RMSEA 0.015
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.042
Standardized Root Mean Square Residual:
SRMR 0.010 0.010
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.585 0.462
ipfrule (.p2.) 1.195 0.060 19.884 0.000 0.699 0.620
ipbhprp (.p3.) 1.282 0.067 19.101 0.000 0.750 0.641
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.486
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.820
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.831
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.263 0.062 20.376 0.000 1.263 0.787
.ipfrule 0.785 0.050 15.612 0.000 0.785 0.616
.ipbhprp 0.804 0.059 13.550 0.000 0.804 0.589
TraditnCnfrmty 0.342 0.034 10.129 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.661 0.479
ipfrule (.p2.) 1.195 0.060 19.884 0.000 0.790 0.567
ipbhprp (.p3.) 1.282 0.067 19.101 0.000 0.847 0.650
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.918
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.462
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.123
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.468 0.049 29.990 0.000 1.468 0.771
.ipfrule 1.320 0.049 26.752 0.000 1.320 0.679
.ipbhprp 0.982 0.051 19.178 0.000 0.982 0.578
TraditnCnfrmty 0.437 0.035 12.540 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.686 0.477
ipfrule (.p2.) 1.195 0.060 19.884 0.000 0.819 0.574
ipbhprp (.p3.) 1.282 0.067 19.101 0.000 0.879 0.680
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.884
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.539
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.380
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.592 0.057 27.865 0.000 1.592 0.772
.ipfrule 1.365 0.062 22.130 0.000 1.365 0.670
.ipbhprp 0.895 0.059 15.123 0.000 0.895 0.537
TraditnCnfrmty 0.470 0.043 11.058 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance of the latent factor for model identification have to be fixed at 1. In the other groups, factor variance is freely estimated.
tradition_conformity_fit_metric2 <- cfa(
model = "
group: [CZ]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
TraditionConformity ~~ 1*TraditionConformity
group: [DE]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
TraditionConformity ~~ NA*TraditionConformity
group: [GB]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
TraditionConformity ~~ NA*TraditionConformity
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_metric2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 57 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 29
Number of equality constraints 6
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 6.366 5.479
Degrees of freedom 4 4
P-value (Chi-square) 0.173 0.242
Scaling correction factor 1.162
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 3.702 3.187
DE 1.782 1.534
GB 0.882 0.759
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.999 0.999
Tucker-Lewis Index (TLI) 0.997 0.997
Robust Comparative Fit Index (CFI) 0.999
Robust Tucker-Lewis Index (TLI) 0.998
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28925.400 -28925.400
Scaling correction factor 0.796
for the MLR correction
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Scaling correction factor 1.027
for the MLR correction
Akaike (AIC) 57896.799 57896.799
Bayesian (BIC) 58050.282 58050.282
Sample-size adjusted Bayesian (BIC) 57977.195 57977.195
Root Mean Square Error of Approximation:
RMSEA 0.017 0.014
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.042 0.037
P-value RMSEA <= 0.05 0.990 0.997
Robust RMSEA 0.015
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.042
Standardized Root Mean Square Residual:
SRMR 0.010 0.010
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.585 0.029 20.258 0.000 0.585 0.462
ipfrule (b) 0.699 0.030 23.557 0.000 0.699 0.620
ipbhprp (c) 0.750 0.035 21.611 0.000 0.750 0.641
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.416 0.034 129.035 0.000 4.416 3.486
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.820
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.831
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.263 0.062 20.376 0.000 1.263 0.787
.ipfrule 0.785 0.050 15.612 0.000 0.785 0.616
.ipbhprp 0.804 0.059 13.550 0.000 0.804 0.589
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.585 0.029 20.258 0.000 0.661 0.479
ipfrule (b) 0.699 0.030 23.557 0.000 0.790 0.567
ipbhprp (c) 0.750 0.035 21.611 0.000 0.847 0.650
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.028 0.027 151.748 0.000 4.028 2.918
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.462
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.123
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.277 0.107 11.930 0.000 1.000 1.000
.imptrad 1.468 0.049 29.990 0.000 1.468 0.771
.ipfrule 1.320 0.049 26.752 0.000 1.320 0.679
.ipbhprp 0.982 0.051 19.178 0.000 0.982 0.578
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.585 0.029 20.258 0.000 0.686 0.477
ipfrule (b) 0.699 0.030 23.557 0.000 0.819 0.574
ipbhprp (c) 0.750 0.035 21.611 0.000 0.879 0.680
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 4.142 0.034 121.354 0.000 4.142 2.884
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.539
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.380
TraditnCnfrmty 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.374 0.122 11.248 0.000 1.000 1.000
.imptrad 1.592 0.057 27.865 0.000 1.592 0.772
.ipfrule 1.365 0.062 22.130 0.000 1.365 0.670
.ipbhprp 0.895 0.059 15.123 0.000 0.895 0.537
Reference indicator method
tradition_conformity_fit_scalar <- cfa(
model = "TraditionConformity =~ imptrad + ipfrule + ipbhprp",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_scalar,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 59 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 29
Number of equality constraints 10
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 151.984 143.262
Degrees of freedom 8 8
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.061
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 88.375 83.303
DE 19.731 18.599
GB 43.878 41.360
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.916 0.894
Tucker-Lewis Index (TLI) 0.905 0.881
Robust Comparative Fit Index (CFI) 0.916
Robust Tucker-Lewis Index (TLI) 0.906
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28998.209 -28998.209
Scaling correction factor 0.663
for the MLR correction
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Scaling correction factor 1.027
for the MLR correction
Akaike (AIC) 58034.417 58034.417
Bayesian (BIC) 58161.207 58161.207
Sample-size adjusted Bayesian (BIC) 58100.831 58100.831
Root Mean Square Error of Approximation:
RMSEA 0.096 0.093
90 Percent confidence interval - lower 0.083 0.081
90 Percent confidence interval - upper 0.110 0.106
P-value RMSEA <= 0.05 0.000 0.000
Robust RMSEA 0.096
90 Percent confidence interval - lower 0.083
90 Percent confidence interval - upper 0.110
Standardized Root Mean Square Residual:
SRMR 0.042 0.042
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.534 0.423
ipfrule (.p2.) 1.484 0.088 16.897 0.000 0.793 0.694
ipbhprp (.p3.) 1.174 0.048 24.536 0.000 0.627 0.538
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (.p8.) 4.478 0.025 177.100 0.000 4.478 3.544
.ipfrule (.p9.) 4.202 0.038 110.883 0.000 4.202 3.675
.ipbhprp (.10.) 4.635 0.024 195.377 0.000 4.635 3.974
TrdtnCn 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.311 0.065 20.158 0.000 1.311 0.821
.ipfrule 0.678 0.065 10.437 0.000 0.678 0.519
.ipbhprp 0.967 0.060 16.035 0.000 0.967 0.711
TraditnCnfrmty 0.286 0.031 9.177 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.624 0.454
ipfrule (.p2.) 1.484 0.088 16.897 0.000 0.927 0.655
ipbhprp (.p3.) 1.174 0.048 24.536 0.000 0.733 0.568
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (.p8.) 4.478 0.025 177.100 0.000 4.478 3.258
.ipfrule (.p9.) 4.202 0.038 110.883 0.000 4.202 2.972
.ipbhprp (.10.) 4.635 0.024 195.377 0.000 4.635 3.595
TrdtnCn -0.494 0.028 -17.603 0.000 -0.791 -0.791
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.500 0.047 31.732 0.000 1.500 0.794
.ipfrule 1.140 0.058 19.567 0.000 1.140 0.570
.ipbhprp 1.125 0.045 24.981 0.000 1.125 0.677
TraditnCnfrmty 0.390 0.034 11.480 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad 1.000 0.646 0.453
ipfrule (.p2.) 1.484 0.088 16.897 0.000 0.960 0.662
ipbhprp (.p3.) 1.174 0.048 24.536 0.000 0.759 0.591
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (.p8.) 4.478 0.025 177.100 0.000 4.478 3.138
.ipfrule (.p9.) 4.202 0.038 110.883 0.000 4.202 2.897
.ipbhprp (.10.) 4.635 0.024 195.377 0.000 4.635 3.612
TrdtnCn -0.326 0.030 -10.772 0.000 -0.505 -0.505
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad 1.619 0.058 28.086 0.000 1.619 0.795
.ipfrule 1.183 0.074 15.991 0.000 1.183 0.562
.ipbhprp 1.070 0.055 19.487 0.000 1.070 0.650
TraditnCnfrmty 0.418 0.040 10.411 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
tradition_conformity_fit_scalar2 <- cfa(
model = "
group: [CZ]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ f*1
TraditionConformity ~ 0*1
TraditionConformity ~~ 1*TraditionConformity
group: [DE]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ f*1
TraditionConformity ~ NA*1
TraditionConformity ~~ NA*TraditionConformity
group: [GB]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ f*1
TraditionConformity ~ NA*1
TraditionConformity ~~ NA*TraditionConformity
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_scalar2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 60 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 31
Number of equality constraints 12
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 151.984 143.262
Degrees of freedom 8 8
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.061
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 88.375 83.303
DE 19.731 18.599
GB 43.878 41.360
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.916 0.894
Tucker-Lewis Index (TLI) 0.905 0.881
Robust Comparative Fit Index (CFI) 0.916
Robust Tucker-Lewis Index (TLI) 0.906
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28998.209 -28998.209
Scaling correction factor 0.620
for the MLR correction
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Scaling correction factor 1.027
for the MLR correction
Akaike (AIC) 58034.417 58034.417
Bayesian (BIC) 58161.207 58161.207
Sample-size adjusted Bayesian (BIC) 58100.831 58100.831
Root Mean Square Error of Approximation:
RMSEA 0.096 0.093
90 Percent confidence interval - lower 0.083 0.081
90 Percent confidence interval - upper 0.110 0.106
P-value RMSEA <= 0.05 0.000 0.000
Robust RMSEA 0.096
90 Percent confidence interval - lower 0.083
90 Percent confidence interval - upper 0.110
Standardized Root Mean Square Residual:
SRMR 0.042 0.042
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.534 0.029 18.354 0.000 0.534 0.423
ipfrule (b) 0.793 0.032 24.654 0.000 0.793 0.694
ipbhprp (c) 0.627 0.032 19.908 0.000 0.627 0.538
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.478 0.025 177.100 0.000 4.478 3.544
.ipfrule (e) 4.202 0.038 110.883 0.000 4.202 3.675
.ipbhprp (f) 4.635 0.024 195.376 0.000 4.635 3.974
TrdtnCnfrm 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.311 0.065 20.158 0.000 1.311 0.821
.ipfrule 0.678 0.065 10.437 0.000 0.678 0.519
.ipbhprp 0.967 0.060 16.035 0.000 0.967 0.711
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.534 0.029 18.354 0.000 0.624 0.454
ipfrule (b) 0.793 0.032 24.654 0.000 0.927 0.655
ipbhprp (c) 0.627 0.032 19.908 0.000 0.733 0.568
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.478 0.025 177.100 0.000 4.478 3.258
.ipfrule (e) 4.202 0.038 110.883 0.000 4.202 2.972
.ipbhprp (f) 4.635 0.024 195.376 0.000 4.635 3.595
TrdtnCnfrm -0.924 0.063 -14.626 0.000 -0.791 -0.791
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.365 0.116 11.752 0.000 1.000 1.000
.imptrad 1.500 0.047 31.732 0.000 1.500 0.794
.ipfrule 1.140 0.058 19.567 0.000 1.140 0.570
.ipbhprp 1.125 0.045 24.981 0.000 1.125 0.677
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.534 0.029 18.354 0.000 0.646 0.453
ipfrule (b) 0.793 0.032 24.654 0.000 0.960 0.662
ipbhprp (c) 0.627 0.032 19.908 0.000 0.759 0.591
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.478 0.025 177.100 0.000 4.478 3.138
.ipfrule (e) 4.202 0.038 110.883 0.000 4.202 2.897
.ipbhprp (f) 4.635 0.024 195.376 0.000 4.635 3.612
TrdtnCnfrm -0.611 0.064 -9.488 0.000 -0.505 -0.505
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.463 0.133 11.041 0.000 1.000 1.000
.imptrad 1.619 0.058 28.086 0.000 1.619 0.795
.ipfrule 1.183 0.074 15.991 0.000 1.183 0.562
.ipbhprp 1.070 0.055 19.487 0.000 1.070 0.650
compFit.tradition_conformity <- compareFit(
scalar = tradition_conformity_fit_scalar,
metric = tradition_conformity_fit_metric,
config = tradition_conformity_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.tradition_conformity,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 57898 58079 0.0000
metric 4 57897 58050 6.3664 5.479 4 0.2415
scalar 8 58034 58161 151.9842 151.701 4 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 5.479 4 .242 .014 0.999 0.997
scalar 143.262 8 .000 .093 .894 .881
srmr aic bic
config .000† 57898.433 58078.609
metric .010 57896.799† 58050.282†
scalar .042 58034.417 58161.207
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 4 0.014 -0.001 -0.003 0.010 -1.634
scalar - metric 4 0.079 -0.104 -0.116 0.031 137.618
bic
metric - config -28.326
scalar - metric 110.925
Fixed factor method
compFit.tradition_conformity2 <- compareFit(
scalar = tradition_conformity_fit_scalar2,
metric = tradition_conformity_fit_metric2,
config = tradition_conformity_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.tradition_conformity2,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 57898 58079 0.0000
metric 4 57897 58050 6.3664 5.479 4 0.2415
scalar 8 58034 58161 151.9842 151.701 4 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 5.479 4 .242 .014 0.999 0.997
scalar 143.262 8 .000 .093 .894 .881
srmr aic bic
config .000† 57898.433 58078.609
metric .010 57896.799† 58050.282†
scalar .042 58034.417 58161.207
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 4 0.014 -0.001 -0.003 0.010 -1.634
scalar - metric 4 0.079 -0.104 -0.116 0.031 137.618
bic
metric - config -28.326
scalar - metric 110.925
Reference indicator method
perceived_threat_fit_countries <- ESS07_countries %>%
map(~ cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
perceived_threat_fit_countries %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 32 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 9.641 6.828
Degrees of freedom 1 1
P-value (Chi-square) 0.002 0.009
Scaling correction factor 1.412
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 1433.735 824.522
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.739
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.994 0.993
Tucker-Lewis Index (TLI) 0.964 0.957
Robust Comparative Fit Index (CFI) 0.994
Robust Tucker-Lewis Index (TLI) 0.965
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -11199.036 -11199.036
Scaling correction factor 1.307
for the MLR correction
Loglikelihood unrestricted model (H1) -11194.216 -11194.216
Scaling correction factor 1.315
for the MLR correction
Akaike (AIC) 22424.072 22424.072
Bayesian (BIC) 22492.182 22492.182
Sample-size adjusted Bayesian (BIC) 22450.886 22450.886
Root Mean Square Error of Approximation:
RMSEA 0.079 0.065
90 Percent confidence interval - lower 0.039 0.031
90 Percent confidence interval - upper 0.127 0.106
P-value RMSEA <= 0.05 0.108 0.210
Robust RMSEA 0.077
90 Percent confidence interval - lower 0.031
90 Percent confidence interval - upper 0.136
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.685 0.808
imueclt 0.912 0.051 17.804 0.000 1.537 0.756
imtcjob 0.749 0.042 17.885 0.000 1.262 0.601
rlgueim 0.520 0.051 10.213 0.000 0.877 0.440
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.440 0.135 3.251 0.001 0.440 0.185
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.514 0.177 8.566 0.000 1.514 0.348
.imueclt 1.771 0.168 10.541 0.000 1.771 0.429
.imtcjob 2.817 0.161 17.454 0.000 2.817 0.639
.rlgueim 3.193 0.185 17.303 0.000 3.193 0.806
PerceivedThret 2.838 0.205 13.831 0.000 1.000 1.000
$DE
lavaan 0.6-12 ended normally after 31 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 27.537 21.670
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.271
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 3111.932 2017.240
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.543
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.991 0.990
Tucker-Lewis Index (TLI) 0.949 0.938
Robust Comparative Fit Index (CFI) 0.992
Robust Tucker-Lewis Index (TLI) 0.949
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -22018.818 -22018.818
Scaling correction factor 1.252
for the MLR correction
Loglikelihood unrestricted model (H1) -22005.049 -22005.049
Scaling correction factor 1.254
for the MLR correction
Akaike (AIC) 44063.635 44063.635
Bayesian (BIC) 44140.208 44140.208
Sample-size adjusted Bayesian (BIC) 44098.903 44098.903
Root Mean Square Error of Approximation:
RMSEA 0.100 0.088
90 Percent confidence interval - lower 0.070 0.061
90 Percent confidence interval - upper 0.133 0.118
P-value RMSEA <= 0.05 0.004 0.011
Robust RMSEA 0.099
90 Percent confidence interval - lower 0.066
90 Percent confidence interval - upper 0.137
Standardized Root Mean Square Residual:
SRMR 0.015 0.015
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.965 0.847
imueclt 0.837 0.033 25.661 0.000 1.646 0.698
imtcjob 0.665 0.028 23.404 0.000 1.306 0.638
rlgueim 0.489 0.029 16.810 0.000 0.962 0.464
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.009 0.098 10.345 0.000 1.009 0.325
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.517 0.153 9.945 0.000 1.517 0.282
.imueclt 2.858 0.132 21.654 0.000 2.858 0.513
.imtcjob 2.489 0.116 21.454 0.000 2.489 0.593
.rlgueim 3.370 0.116 29.042 0.000 3.370 0.785
PerceivedThret 3.862 0.195 19.796 0.000 1.000 1.000
$GB
lavaan 0.6-12 ended normally after 33 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 14.448 7.701
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.006
Scaling correction factor 1.876
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2607.729 1415.086
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.843
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.995 0.995
Tucker-Lewis Index (TLI) 0.969 0.971
Robust Comparative Fit Index (CFI) 0.995
Robust Tucker-Lewis Index (TLI) 0.971
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -15132.160 -15132.160
Scaling correction factor 1.258
for the MLR correction
Loglikelihood unrestricted model (H1) -15124.936 -15124.936
Scaling correction factor 1.302
for the MLR correction
Akaike (AIC) 30290.321 30290.321
Bayesian (BIC) 30361.617 30361.617
Sample-size adjusted Bayesian (BIC) 30320.317 30320.317
Root Mean Square Error of Approximation:
RMSEA 0.087 0.061
90 Percent confidence interval - lower 0.051 0.035
90 Percent confidence interval - upper 0.129 0.093
P-value RMSEA <= 0.05 0.045 0.218
Robust RMSEA 0.084
90 Percent confidence interval - lower 0.037
90 Percent confidence interval - upper 0.143
Standardized Root Mean Square Residual:
SRMR 0.012 0.012
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.081 0.838
imueclt 1.025 0.039 26.060 0.000 2.134 0.795
imtcjob 0.727 0.031 23.404 0.000 1.512 0.659
rlgueim 0.611 0.037 16.468 0.000 1.270 0.556
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.897 0.159 5.652 0.000 0.897 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.840 0.173 10.660 0.000 1.840 0.298
.imueclt 2.651 0.214 12.414 0.000 2.651 0.368
.imtcjob 2.984 0.157 19.046 0.000 2.984 0.566
.rlgueim 3.602 0.173 20.771 0.000 3.602 0.691
PerceivedThret 4.329 0.236 18.318 0.000 1.000 1.000
Fixed factor method
perceived_threat_fit_countries2 <- ESS07_countries %>%
map(~ cfa(
model = "
PerceivedThreat =~ NA*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
perceived_threat_fit_countries2 %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 24 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 9.641 6.828
Degrees of freedom 1 1
P-value (Chi-square) 0.002 0.009
Scaling correction factor 1.412
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 1433.735 824.522
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.739
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.994 0.993
Tucker-Lewis Index (TLI) 0.964 0.957
Robust Comparative Fit Index (CFI) 0.994
Robust Tucker-Lewis Index (TLI) 0.965
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -11199.036 -11199.036
Scaling correction factor 1.307
for the MLR correction
Loglikelihood unrestricted model (H1) -11194.216 -11194.216
Scaling correction factor 1.315
for the MLR correction
Akaike (AIC) 22424.072 22424.072
Bayesian (BIC) 22492.182 22492.182
Sample-size adjusted Bayesian (BIC) 22450.886 22450.886
Root Mean Square Error of Approximation:
RMSEA 0.079 0.065
90 Percent confidence interval - lower 0.039 0.031
90 Percent confidence interval - upper 0.127 0.106
P-value RMSEA <= 0.05 0.108 0.210
Robust RMSEA 0.077
90 Percent confidence interval - lower 0.031
90 Percent confidence interval - upper 0.136
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.685 0.061 27.663 0.000 1.685 0.808
imueclt 1.537 0.062 24.770 0.000 1.537 0.756
imtcjob 1.262 0.062 20.249 0.000 1.262 0.601
rlgueim 0.877 0.074 11.769 0.000 0.877 0.440
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.440 0.135 3.251 0.001 0.440 0.185
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.514 0.177 8.566 0.000 1.514 0.348
.imueclt 1.771 0.168 10.541 0.000 1.771 0.429
.imtcjob 2.817 0.161 17.454 0.000 2.817 0.639
.rlgueim 3.193 0.185 17.303 0.000 3.193 0.806
$DE
lavaan 0.6-12 ended normally after 23 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 27.537 21.670
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.271
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 3111.932 2017.240
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.543
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.991 0.990
Tucker-Lewis Index (TLI) 0.949 0.938
Robust Comparative Fit Index (CFI) 0.992
Robust Tucker-Lewis Index (TLI) 0.949
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -22018.818 -22018.818
Scaling correction factor 1.252
for the MLR correction
Loglikelihood unrestricted model (H1) -22005.049 -22005.049
Scaling correction factor 1.254
for the MLR correction
Akaike (AIC) 44063.635 44063.635
Bayesian (BIC) 44140.208 44140.208
Sample-size adjusted Bayesian (BIC) 44098.903 44098.903
Root Mean Square Error of Approximation:
RMSEA 0.100 0.088
90 Percent confidence interval - lower 0.070 0.061
90 Percent confidence interval - upper 0.133 0.118
P-value RMSEA <= 0.05 0.004 0.011
Robust RMSEA 0.099
90 Percent confidence interval - lower 0.066
90 Percent confidence interval - upper 0.137
Standardized Root Mean Square Residual:
SRMR 0.015 0.015
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.965 0.050 39.593 0.000 1.965 0.847
imueclt 1.646 0.050 33.025 0.000 1.646 0.698
imtcjob 1.306 0.048 27.027 0.000 1.306 0.638
rlgueim 0.962 0.050 19.417 0.000 0.962 0.464
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.009 0.098 10.345 0.000 1.009 0.325
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.517 0.153 9.945 0.000 1.517 0.282
.imueclt 2.858 0.132 21.654 0.000 2.858 0.513
.imtcjob 2.489 0.116 21.454 0.000 2.489 0.593
.rlgueim 3.370 0.116 29.042 0.000 3.370 0.785
$GB
lavaan 0.6-12 ended normally after 24 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 13
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 14.448 7.701
Degrees of freedom 1 1
P-value (Chi-square) 0.000 0.006
Scaling correction factor 1.876
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2607.729 1415.086
Degrees of freedom 6 6
P-value 0.000 0.000
Scaling correction factor 1.843
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.995 0.995
Tucker-Lewis Index (TLI) 0.969 0.971
Robust Comparative Fit Index (CFI) 0.995
Robust Tucker-Lewis Index (TLI) 0.971
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -15132.160 -15132.160
Scaling correction factor 1.258
for the MLR correction
Loglikelihood unrestricted model (H1) -15124.936 -15124.936
Scaling correction factor 1.302
for the MLR correction
Akaike (AIC) 30290.321 30290.321
Bayesian (BIC) 30361.617 30361.617
Sample-size adjusted Bayesian (BIC) 30320.317 30320.317
Root Mean Square Error of Approximation:
RMSEA 0.087 0.061
90 Percent confidence interval - lower 0.051 0.035
90 Percent confidence interval - upper 0.129 0.093
P-value RMSEA <= 0.05 0.045 0.218
Robust RMSEA 0.084
90 Percent confidence interval - lower 0.037
90 Percent confidence interval - upper 0.143
Standardized Root Mean Square Residual:
SRMR 0.012 0.012
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 2.081 0.057 36.637 0.000 2.081 0.838
imueclt 2.134 0.061 35.149 0.000 2.134 0.795
imtcjob 1.512 0.058 25.856 0.000 1.512 0.659
rlgueim 1.270 0.065 19.421 0.000 1.270 0.556
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.897 0.159 5.652 0.000 0.897 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.840 0.173 10.660 0.000 1.840 0.298
.imueclt 2.651 0.214 12.414 0.000 2.651 0.368
.imtcjob 2.984 0.157 19.046 0.000 2.984 0.566
.rlgueim 3.602 0.173 20.771 0.000 3.602 0.691
Reference indicator method
perceived_threat_fit_config <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_config,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 110 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 39
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 51.626 33.973
Degrees of freedom 3 3
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.520
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 9.641 6.344
DE 27.537 18.121
GB 14.448 9.507
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.993 0.993
Tucker-Lewis Index (TLI) 0.959 0.955
Robust Comparative Fit Index (CFI) 0.993
Robust Tucker-Lewis Index (TLI) 0.960
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48350.014 -48350.014
Scaling correction factor 1.273
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96778.028 96778.028
Bayesian (BIC) 97038.282 97038.282
Sample-size adjusted Bayesian (BIC) 96914.351 96914.351
Root Mean Square Error of Approximation:
RMSEA 0.091 0.073
90 Percent confidence interval - lower 0.070 0.056
90 Percent confidence interval - upper 0.114 0.091
P-value RMSEA <= 0.05 0.001 0.015
Robust RMSEA 0.090
90 Percent confidence interval - lower 0.064
90 Percent confidence interval - upper 0.118
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.685 0.808
imueclt 0.912 0.051 17.804 0.000 1.537 0.756
imtcjob 0.749 0.042 17.885 0.000 1.262 0.601
rlgueim 0.520 0.051 10.213 0.000 0.877 0.440
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.440 0.135 3.251 0.001 0.440 0.185
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.514 0.177 8.566 0.000 1.514 0.348
.imueclt 1.771 0.168 10.541 0.000 1.771 0.429
.imtcjob 2.817 0.161 17.454 0.000 2.817 0.639
.rlgueim 3.193 0.185 17.303 0.000 3.193 0.806
PerceivedThret 2.838 0.205 13.831 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.965 0.847
imueclt 0.837 0.033 25.661 0.000 1.646 0.698
imtcjob 0.665 0.028 23.404 0.000 1.306 0.638
rlgueim 0.489 0.029 16.810 0.000 0.962 0.464
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.009 0.098 10.345 0.000 1.009 0.325
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.517 0.153 9.945 0.000 1.517 0.282
.imueclt 2.858 0.132 21.654 0.000 2.858 0.513
.imtcjob 2.489 0.116 21.454 0.000 2.489 0.593
.rlgueim 3.370 0.116 29.042 0.000 3.370 0.785
PerceivedThret 3.862 0.195 19.796 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.081 0.838
imueclt 1.025 0.039 26.060 0.000 2.134 0.795
imtcjob 0.727 0.031 23.404 0.000 1.512 0.659
rlgueim 0.611 0.037 16.468 0.000 1.270 0.556
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.897 0.159 5.652 0.000 0.897 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.840 0.173 10.660 0.000 1.840 0.298
.imueclt 2.651 0.214 12.414 0.000 2.651 0.368
.imtcjob 2.984 0.157 19.046 0.000 2.984 0.566
.rlgueim 3.602 0.173 20.771 0.000 3.602 0.691
PerceivedThret 4.329 0.236 18.318 0.000 1.000 1.000
Fixed factor method
perceived_threat_fit_config2 <- cfa(
model = "
group: [CZ]
PerceivedThreat =~ NA*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
group: [DE]
PerceivedThreat =~ NA*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
group: [GB]
PerceivedThreat =~ NA*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_config2,
fit.measures = T,
standardized = T
)
lavaan 0.6-12 ended normally after 71 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 39
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 51.626 33.973
Degrees of freedom 3 3
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.520
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 9.641 6.344
DE 27.537 18.121
GB 14.448 9.507
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.993 0.993
Tucker-Lewis Index (TLI) 0.959 0.955
Robust Comparative Fit Index (CFI) 0.993
Robust Tucker-Lewis Index (TLI) 0.960
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48350.014 -48350.014
Scaling correction factor 1.273
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96778.028 96778.028
Bayesian (BIC) 97038.282 97038.282
Sample-size adjusted Bayesian (BIC) 96914.351 96914.351
Root Mean Square Error of Approximation:
RMSEA 0.091 0.073
90 Percent confidence interval - lower 0.070 0.056
90 Percent confidence interval - upper 0.114 0.091
P-value RMSEA <= 0.05 0.001 0.015
Robust RMSEA 0.090
90 Percent confidence interval - lower 0.064
90 Percent confidence interval - upper 0.118
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.685 0.061 27.663 0.000 1.685 0.808
imueclt 1.537 0.062 24.771 0.000 1.537 0.756
imtcjob 1.262 0.062 20.249 0.000 1.262 0.601
rlgueim 0.877 0.074 11.769 0.000 0.877 0.440
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.440 0.135 3.251 0.001 0.440 0.185
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.514 0.177 8.566 0.000 1.514 0.348
.imueclt 1.771 0.168 10.541 0.000 1.771 0.429
.imtcjob 2.817 0.161 17.454 0.000 2.817 0.639
.rlgueim 3.193 0.185 17.303 0.000 3.193 0.806
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.965 0.050 39.593 0.000 1.965 0.847
imueclt 1.646 0.050 33.025 0.000 1.646 0.698
imtcjob 1.306 0.048 27.027 0.000 1.306 0.638
rlgueim 0.962 0.050 19.417 0.000 0.962 0.464
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.009 0.098 10.345 0.000 1.009 0.325
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.517 0.153 9.945 0.000 1.517 0.282
.imueclt 2.858 0.132 21.654 0.000 2.858 0.513
.imtcjob 2.489 0.116 21.454 0.000 2.489 0.593
.rlgueim 3.370 0.116 29.042 0.000 3.370 0.785
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 2.081 0.057 36.637 0.000 2.081 0.838
imueclt 2.134 0.061 35.149 0.000 2.134 0.795
imtcjob 1.512 0.058 25.856 0.000 1.512 0.659
rlgueim 1.270 0.065 19.421 0.000 1.270 0.556
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.897 0.159 5.652 0.000 0.897 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.840 0.173 10.660 0.000 1.840 0.298
.imueclt 2.651 0.214 12.414 0.000 2.651 0.368
.imtcjob 2.984 0.157 19.046 0.000 2.984 0.566
.rlgueim 3.602 0.173 20.771 0.000 3.602 0.691
Reference indicator method
perceived_threat_fit_metric <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = "loadings",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_metric,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 101 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 39
Number of equality constraints 6
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 70.959 52.609
Degrees of freedom 9 9
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.349
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 11.938 8.851
DE 34.814 25.811
GB 24.207 17.947
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.991 0.990
Tucker-Lewis Index (TLI) 0.983 0.979
Robust Comparative Fit Index (CFI) 0.992
Robust Tucker-Lewis Index (TLI) 0.983
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48359.681 -48359.681
Scaling correction factor 1.078
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96785.361 96785.361
Bayesian (BIC) 97005.576 97005.576
Sample-size adjusted Bayesian (BIC) 96900.711 96900.711
Root Mean Square Error of Approximation:
RMSEA 0.059 0.050
90 Percent confidence interval - lower 0.047 0.039
90 Percent confidence interval - upper 0.073 0.061
P-value RMSEA <= 0.05 0.102 0.483
Robust RMSEA 0.058
90 Percent confidence interval - lower 0.043
90 Percent confidence interval - upper 0.074
Standardized Root Mean Square Residual:
SRMR 0.021 0.021
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.692 0.809
imueclt (.p2.) 0.921 0.023 39.374 0.000 1.557 0.763
imtcjob (.p3.) 0.705 0.019 37.242 0.000 1.192 0.576
rlgueim (.p4.) 0.540 0.021 25.129 0.000 0.914 0.456
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.416 0.115 3.622 0.000 0.416 0.177
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.021
.imueclt 6.115 0.054 112.277 0.000 6.115 2.996
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.166
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.017
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.511 0.138 10.933 0.000 1.511 0.346
.imueclt 1.741 0.136 12.817 0.000 1.741 0.418
.imtcjob 2.867 0.147 19.475 0.000 2.867 0.669
.rlgueim 3.175 0.169 18.809 0.000 3.175 0.792
PerceivedThret 2.862 0.156 18.307 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.881 0.819
imueclt (.p2.) 0.921 0.023 39.374 0.000 1.731 0.725
imtcjob (.p3.) 0.705 0.019 37.242 0.000 1.326 0.646
rlgueim (.p4.) 0.540 0.021 25.129 0.000 1.016 0.488
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.910 0.091 9.972 0.000 0.910 0.304
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.830
.imueclt 3.752 0.046 82.188 0.000 3.752 1.570
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.153
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.285
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.738 0.124 14.054 0.000 1.738 0.329
.imueclt 2.712 0.120 22.574 0.000 2.712 0.475
.imtcjob 2.451 0.108 22.697 0.000 2.451 0.582
.rlgueim 3.304 0.112 29.462 0.000 3.304 0.762
PerceivedThret 3.537 0.166 21.298 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.170 0.865
imueclt (.p2.) 0.921 0.023 39.374 0.000 1.997 0.759
imtcjob (.p3.) 0.705 0.019 37.242 0.000 1.529 0.662
rlgueim (.p4.) 0.540 0.021 25.129 0.000 1.172 0.519
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.082 0.137 7.878 0.000 1.082 0.328
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.032
.imueclt 5.002 0.064 78.633 0.000 5.002 1.902
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.280
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.477
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.587 0.146 10.863 0.000 1.587 0.252
.imueclt 2.927 0.178 16.447 0.000 2.927 0.423
.imtcjob 3.006 0.148 20.332 0.000 3.006 0.562
.rlgueim 3.724 0.159 23.454 0.000 3.724 0.731
PerceivedThret 4.707 0.199 23.624 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance of the latent factor for model identification have to be fixed at 1. In the other groups, factor variance is freely estimated.
perceived_threat_fit_metric2 <- cfa(
model = "
group: [CZ]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
group: [DE]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ NA*PerceivedThreat
group: [GB]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ NA*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_metric2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 85 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 41
Number of equality constraints 8
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 70.959 52.609
Degrees of freedom 9 9
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.349
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 11.938 8.851
DE 34.814 25.811
GB 24.207 17.947
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.991 0.990
Tucker-Lewis Index (TLI) 0.983 0.979
Robust Comparative Fit Index (CFI) 0.992
Robust Tucker-Lewis Index (TLI) 0.983
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48359.681 -48359.681
Scaling correction factor 1.026
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96785.361 96785.361
Bayesian (BIC) 97005.576 97005.576
Sample-size adjusted Bayesian (BIC) 96900.711 96900.711
Root Mean Square Error of Approximation:
RMSEA 0.059 0.050
90 Percent confidence interval - lower 0.047 0.039
90 Percent confidence interval - upper 0.073 0.061
P-value RMSEA <= 0.05 0.102 0.483
Robust RMSEA 0.058
90 Percent confidence interval - lower 0.043
90 Percent confidence interval - upper 0.074
Standardized Root Mean Square Residual:
SRMR 0.021 0.021
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.692 0.046 36.614 0.000 1.692 0.809
imueclt (b) 1.557 0.044 35.582 0.000 1.557 0.763
imtcjob (c) 1.192 0.039 30.448 0.000 1.192 0.576
rlgueim (d) 0.914 0.037 24.895 0.000 0.914 0.456
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.416 0.115 3.622 0.000 0.416 0.177
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.021
.imueclt 6.115 0.054 112.277 0.000 6.115 2.996
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.166
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.017
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.511 0.138 10.933 0.000 1.511 0.346
.imueclt 1.741 0.136 12.817 0.000 1.741 0.418
.imtcjob 2.867 0.147 19.475 0.000 2.867 0.669
.rlgueim 3.175 0.169 18.809 0.000 3.175 0.792
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.692 0.046 36.614 0.000 1.881 0.819
imueclt (b) 1.557 0.044 35.582 0.000 1.731 0.725
imtcjob (c) 1.192 0.039 30.448 0.000 1.326 0.646
rlgueim (d) 0.914 0.037 24.895 0.000 1.016 0.488
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.910 0.091 9.972 0.000 0.910 0.304
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.830
.imueclt 3.752 0.046 82.188 0.000 3.752 1.570
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.153
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.285
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.236 0.076 16.158 0.000 1.000 1.000
.imbgeco 1.738 0.124 14.054 0.000 1.738 0.329
.imueclt 2.712 0.120 22.574 0.000 2.712 0.475
.imtcjob 2.451 0.108 22.697 0.000 2.451 0.582
.rlgueim 3.304 0.112 29.462 0.000 3.304 0.762
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.692 0.046 36.614 0.000 2.170 0.865
imueclt (b) 1.557 0.044 35.582 0.000 1.997 0.759
imtcjob (c) 1.192 0.039 30.448 0.000 1.529 0.662
rlgueim (d) 0.914 0.037 24.895 0.000 1.172 0.519
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.082 0.137 7.878 0.000 1.082 0.328
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.032
.imueclt 5.002 0.064 78.633 0.000 5.002 1.902
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.280
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.477
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.645 0.103 15.985 0.000 1.000 1.000
.imbgeco 1.587 0.146 10.863 0.000 1.587 0.252
.imueclt 2.927 0.178 16.447 0.000 2.927 0.423
.imtcjob 3.006 0.148 20.332 0.000 3.006 0.562
.rlgueim 3.724 0.159 23.454 0.000 3.724 0.731
Reference indicator method
perceived_threat_fit_scalar <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_scalar,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 94 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 41
Number of equality constraints 14
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 186.745 152.536
Degrees of freedom 15 15
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.224
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 53.132 43.399
DE 84.211 68.785
GB 49.401 40.352
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.976 0.967
Tucker-Lewis Index (TLI) 0.971 0.960
Robust Comparative Fit Index (CFI) 0.976
Robust Tucker-Lewis Index (TLI) 0.972
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48417.573 -48417.573
Scaling correction factor 0.874
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96889.147 96889.147
Bayesian (BIC) 97069.322 97069.322
Sample-size adjusted Bayesian (BIC) 96983.524 96983.524
Root Mean Square Error of Approximation:
RMSEA 0.077 0.069
90 Percent confidence interval - lower 0.067 0.060
90 Percent confidence interval - upper 0.087 0.078
P-value RMSEA <= 0.05 0.000 0.000
Robust RMSEA 0.076
90 Percent confidence interval - lower 0.065
90 Percent confidence interval - upper 0.087
Standardized Root Mean Square Residual:
SRMR 0.036 0.036
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.605 0.777
imueclt (.p2.) 0.997 0.017 57.591 0.000 1.600 0.781
imtcjob (.p3.) 0.791 0.016 48.828 0.000 1.269 0.599
rlgueim (.p4.) 0.580 0.018 32.967 0.000 0.931 0.465
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.346 0.112 3.080 0.002 0.346 0.153
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (.11.) 6.406 0.052 124.065 0.000 6.406 3.099
.imueclt (.12.) 6.118 0.052 117.079 0.000 6.118 2.989
.imtcjob (.13.) 6.313 0.051 124.705 0.000 6.313 2.977
.rlgueim (.14.) 6.143 0.042 145.575 0.000 6.143 3.068
PrcvdTh 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.696 0.129 13.140 0.000 1.696 0.397
.imueclt 1.631 0.136 11.993 0.000 1.631 0.389
.imtcjob 2.886 0.154 18.712 0.000 2.886 0.642
.rlgueim 3.141 0.170 18.515 0.000 3.141 0.784
PerceivedThret 2.576 0.135 19.012 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.773 0.783
imueclt (.p2.) 0.997 0.017 57.591 0.000 1.767 0.737
imtcjob (.p3.) 0.791 0.016 48.828 0.000 1.402 0.672
rlgueim (.p4.) 0.580 0.018 32.967 0.000 1.029 0.495
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.850 0.090 9.433 0.000 0.850 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (.11.) 6.406 0.052 124.065 0.000 6.406 2.829
.imueclt (.12.) 6.118 0.052 117.079 0.000 6.118 2.550
.imtcjob (.13.) 6.313 0.051 124.705 0.000 6.313 3.026
.rlgueim (.14.) 6.143 0.042 145.575 0.000 6.143 2.955
PrcvdTh -2.306 0.063 -36.423 0.000 -1.301 -1.301
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.984 0.112 17.714 0.000 1.984 0.387
.imueclt 2.634 0.120 21.979 0.000 2.634 0.458
.imtcjob 2.385 0.110 21.684 0.000 2.385 0.548
.rlgueim 3.262 0.111 29.252 0.000 3.262 0.755
PerceivedThret 3.143 0.143 22.048 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.066 0.835
imueclt (.p2.) 0.997 0.017 57.591 0.000 2.059 0.776
imtcjob (.p3.) 0.791 0.016 48.828 0.000 1.634 0.692
rlgueim (.p4.) 0.580 0.018 32.967 0.000 1.199 0.529
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.008 0.131 7.666 0.000 1.008 0.314
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (.11.) 6.406 0.052 124.065 0.000 6.406 2.590
.imueclt (.12.) 6.118 0.052 117.079 0.000 6.118 2.306
.imtcjob (.13.) 6.313 0.051 124.705 0.000 6.313 2.674
.rlgueim (.14.) 6.143 0.042 145.575 0.000 6.143 2.712
PrcvdTh -1.243 0.074 -16.759 0.000 -0.601 -0.601
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.849 0.132 14.012 0.000 1.849 0.302
.imueclt 2.796 0.168 16.596 0.000 2.796 0.397
.imtcjob 2.903 0.148 19.592 0.000 2.903 0.521
.rlgueim 3.692 0.154 24.014 0.000 3.692 0.720
PerceivedThret 4.269 0.183 23.337 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
perceived_threat_fit_scalar2 <- cfa(
model = "
group: [CZ]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
imbgeco ~ e*1
imueclt ~ f*1
imtcjob ~ g*1
rlgueim ~ h*1
PerceivedThreat ~ 0*1
PerceivedThreat ~~ 1*PerceivedThreat
group: [DE]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
imbgeco ~ e*1
imueclt ~ f*1
imtcjob ~ g*1
rlgueim ~ h*1
PerceivedThreat ~ NA*1
PerceivedThreat ~~ NA*PerceivedThreat
group: [GB]
PerceivedThreat =~ NA*imbgeco + a*imbgeco + b*imueclt + c*imtcjob + d*rlgueim
imueclt ~~ rlgueim
imbgeco ~ e*1
imueclt ~ f*1
imtcjob ~ g*1
rlgueim ~ h*1
PerceivedThreat ~ NA*1
PerceivedThreat ~~ NA*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_scalar2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 82 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 43
Number of equality constraints 16
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 186.745 152.536
Degrees of freedom 15 15
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.224
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 53.133 43.399
DE 84.211 68.785
GB 49.401 40.351
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.976 0.967
Tucker-Lewis Index (TLI) 0.971 0.960
Robust Comparative Fit Index (CFI) 0.976
Robust Tucker-Lewis Index (TLI) 0.972
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48417.573 -48417.573
Scaling correction factor 0.833
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96889.147 96889.147
Bayesian (BIC) 97069.322 97069.322
Sample-size adjusted Bayesian (BIC) 96983.524 96983.524
Root Mean Square Error of Approximation:
RMSEA 0.077 0.069
90 Percent confidence interval - lower 0.067 0.060
90 Percent confidence interval - upper 0.087 0.078
P-value RMSEA <= 0.05 0.000 0.000
Robust RMSEA 0.076
90 Percent confidence interval - lower 0.065
90 Percent confidence interval - upper 0.087
Standardized Root Mean Square Residual:
SRMR 0.036 0.036
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.605 0.042 38.023 0.000 1.605 0.777
imueclt (b) 1.600 0.043 37.311 0.000 1.600 0.781
imtcjob (c) 1.269 0.038 33.396 0.000 1.269 0.599
rlgueim (d) 0.931 0.033 27.877 0.000 0.931 0.465
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.346 0.112 3.080 0.002 0.346 0.153
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (e) 6.406 0.052 124.065 0.000 6.406 3.099
.imueclt (f) 6.118 0.052 117.079 0.000 6.118 2.989
.imtcjob (g) 6.313 0.051 124.705 0.000 6.313 2.977
.rlgueim (h) 6.143 0.042 145.575 0.000 6.143 3.068
PercvdThrt 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.000 1.000 1.000
.imbgeco 1.696 0.129 13.140 0.000 1.696 0.397
.imueclt 1.631 0.136 11.993 0.000 1.631 0.389
.imtcjob 2.886 0.154 18.712 0.000 2.886 0.642
.rlgueim 3.141 0.170 18.515 0.000 3.141 0.784
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.605 0.042 38.023 0.000 1.773 0.783
imueclt (b) 1.600 0.043 37.311 0.000 1.767 0.737
imtcjob (c) 1.269 0.038 33.396 0.000 1.402 0.672
rlgueim (d) 0.931 0.033 27.877 0.000 1.029 0.495
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.850 0.090 9.433 0.000 0.850 0.290
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (e) 6.406 0.052 124.065 0.000 6.406 2.829
.imueclt (f) 6.118 0.052 117.079 0.000 6.118 2.550
.imtcjob (g) 6.313 0.051 124.705 0.000 6.313 3.026
.rlgueim (h) 6.143 0.042 145.575 0.000 6.143 2.955
PercvdThrt -1.437 0.051 -28.384 0.000 -1.301 -1.301
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.220 0.077 15.862 0.000 1.000 1.000
.imbgeco 1.984 0.112 17.714 0.000 1.984 0.387
.imueclt 2.633 0.120 21.979 0.000 2.633 0.458
.imtcjob 2.385 0.110 21.684 0.000 2.385 0.548
.rlgueim 3.262 0.111 29.252 0.000 3.262 0.755
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco (a) 1.605 0.042 38.023 0.000 2.066 0.835
imueclt (b) 1.600 0.043 37.311 0.000 2.059 0.776
imtcjob (c) 1.269 0.038 33.396 0.000 1.634 0.692
rlgueim (d) 0.931 0.033 27.877 0.000 1.199 0.529
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.008 0.131 7.666 0.000 1.008 0.314
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco (e) 6.406 0.052 124.065 0.000 6.406 2.590
.imueclt (f) 6.118 0.052 117.079 0.000 6.118 2.306
.imtcjob (g) 6.313 0.051 124.705 0.000 6.313 2.674
.rlgueim (h) 6.143 0.042 145.575 0.000 6.143 2.712
PercvdThrt -0.774 0.048 -16.100 0.000 -0.601 -0.601
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThret 1.657 0.105 15.771 0.000 1.000 1.000
.imbgeco 1.849 0.132 14.012 0.000 1.849 0.302
.imueclt 2.796 0.168 16.596 0.000 2.796 0.397
.imtcjob 2.903 0.148 19.592 0.000 2.903 0.521
.rlgueim 3.692 0.154 24.014 0.000 3.692 0.720
compFit.perceived_threat <- compareFit(
scalar = perceived_threat_fit_scalar,
metric = perceived_threat_fit_metric,
config = perceived_threat_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.perceived_threat,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 3 96778 97038 51.626
metric 9 96785 97006 70.959 15.303 6 0.01803 *
scalar 15 96889 97069 186.745 111.602 6 < 2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 33.973† 3 .000 .073 .993† .955
metric 52.609 9 .000 .050† .990 .979†
scalar 152.536 15 .000 .069 .967 .960
srmr aic bic
config .014† 96778.028† 97038.282
metric .021 96785.361 97005.576†
scalar .036 96889.147 97069.322
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 6 -0.023 -0.003 0.024 0.007 7.333
scalar - metric 6 0.019 -0.023 -0.019 0.015 103.786
bic
metric - config -32.706
scalar - metric 63.747
Fixed factor method
compFit.perceived_threat2 <- compareFit(
scalar = perceived_threat_fit_scalar2,
metric = perceived_threat_fit_metric2,
config = perceived_threat_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.perceived_threat2,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 3 96778 97038 51.626
metric 9 96785 97006 70.959 15.303 6 0.01803 *
scalar 15 96889 97069 186.745 111.602 6 < 2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 33.973† 3 .000 .073 .993† .955
metric 52.609 9 .000 .050† .990 .979†
scalar 152.536 15 .000 .069 .967 .960
srmr aic bic
config .014† 96778.028† 97038.282
metric .021 96785.361 97005.576†
scalar .036 96889.147 97069.322
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 6 -0.023 -0.003 0.024 0.007 7.333
scalar - metric 6 0.019 -0.023 -0.019 0.015 103.786
bic
metric - config -32.706
scalar - metric 63.747
Partial measurement invariance Byrne, Shavelson, and Muthén (1989)
Since we only calculate three factor loadings in our measurement model and we only have a partial measurement invariance if two factor loadings are measurement invariant, we have to use the fixed factor method to calculate all factor loadings.
universalism_fit_metric2 %>%
lavTestScore() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
test | X2 | df | p.value
-----------------------------
score | 21.03 | 6 | 1.81e-03
lhs | op | rhs | X2 | df | p.value
-----------------------------------------
.p1. | == | .p12. | 0.13 | 1 | 0.72
.p1. | == | .p23. | 0.07 | 1 | 0.79
.p2. | == | .p13. | 1.04 | 1 | 0.31
.p2. | == | .p24. | 13.75 | 1 | 2.09e-04
.p3. | == | .p14. | 0.37 | 1 | 0.54
.p3. | == | .p25. | 14.47 | 1 | 1.42e-04
.p3. == .p25. -> Constraint with the largest \(\chi^2\) reduction
What do the parameter labels (.p3. & .p25.) mean?
universalism_fit_metric2 %>%
parTable() %>%
select(lhs, op, rhs, group, label, plabel, est, se) %>%
# optional for better display
export_table(table_width = 1, digits = 2)
lhs | op | rhs | group | label | plabel | est | se
-----------------------------------------------------------------
uni | =~ | ipeqopt | [CZ] | a | .p1. | 0.62 | 0.03
uni | =~ | ipudrst | [CZ] | b | .p2. | 0.64 | 0.03
uni | =~ | impenv | [CZ] | c | .p3. | 0.57 | 0.03
uni | ~~ | uni | [CZ] | | .p4. | 1.00 | 0.00
ipeqopt | ~~ | ipeqopt | [CZ] | | .p5. | 0.75 | 0.05
ipudrst | ~~ | ipudrst | [CZ] | | .p6. | 0.81 | 0.05
impenv | ~~ | impenv | [CZ] | | .p7. | 0.75 | 0.04
ipeqopt | ~1 | | [CZ] | | .p8. | 4.54 | 0.03
ipudrst | ~1 | | [CZ] | | .p9. | 4.25 | 0.03
impenv | ~1 | | [CZ] | | .p10. | 4.69 | 0.03
uni | ~1 | | [CZ] | | .p11. | 0.00 | 0.00
uni | =~ | ipeqopt | [DE] | a | .p12. | 0.62 | 0.03
uni | =~ | ipudrst | [DE] | b | .p13. | 0.64 | 0.03
uni | =~ | impenv | [DE] | c | .p14. | 0.57 | 0.03
uni | ~~ | uni | [DE] | | .p15. | 0.60 | 0.06
ipeqopt | ~~ | ipeqopt | [DE] | | .p16. | 0.68 | 0.04
ipudrst | ~~ | ipudrst | [DE] | | .p17. | 0.53 | 0.03
impenv | ~~ | impenv | [DE] | | .p18. | 0.71 | 0.03
ipeqopt | ~1 | | [DE] | | .p19. | 5.13 | 0.02
ipudrst | ~1 | | [DE] | | .p20. | 4.96 | 0.02
impenv | ~1 | | [DE] | | .p21. | 5.00 | 0.02
uni | ~1 | | [DE] | | .p22. | 0.00 | 0.00
uni | =~ | ipeqopt | [GB] | a | .p23. | 0.62 | 0.03
uni | =~ | ipudrst | [GB] | b | .p24. | 0.64 | 0.03
uni | =~ | impenv | [GB] | c | .p25. | 0.57 | 0.03
uni | ~~ | uni | [GB] | | .p26. | 0.87 | 0.10
ipeqopt | ~~ | ipeqopt | [GB] | | .p27. | 0.78 | 0.05
ipudrst | ~~ | ipudrst | [GB] | | .p28. | 0.73 | 0.05
impenv | ~~ | impenv | [GB] | | .p29. | 0.93 | 0.04
ipeqopt | ~1 | | [GB] | | .p30. | 4.99 | 0.03
ipudrst | ~1 | | [GB] | | .p31. | 4.72 | 0.03
impenv | ~1 | | [GB] | | .p32. | 4.85 | 0.03
uni | ~1 | | [GB] | | .p33. | 0.00 | 0.00
.p1. | == | .p12. | | | | 0.00 | 0.00
.p1. | == | .p23. | | | | 1.11e-16 | 0.00
.p2. | == | .p13. | | | | 0.00 | 0.00
.p2. | == | .p24. | | | | 3.33e-16 | 0.00
.p3. | == | .p14. | | | | 0.00 | 0.00
.p3. | == | .p25. | | | | 3.33e-16 | 0.00
Obviously, we achieve the largest \(\chi^2\) reduction in the metric invariance model by freely calculating the factor loading of item impenv, because there is a clear difference between group CZ and GB.
Note! Only in one group does the variance of the latent factor for model identification have to be fixed at 1. In the other groups, factor variance is freely estimated.
universalism_fit_metric_partial <- cfa(
model = "
group: [CZ]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + NA*impenv
uni ~~ 1*uni
group: [DE]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
uni ~~ NA*uni
group: [GB]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + NA*impenv
uni ~~ NA*uni
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
universalism_fit_metric_partial,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 56 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 29
Number of equality constraints 4
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 4.421 3.392
Degrees of freedom 2 2
P-value (Chi-square) 0.110 0.183
Scaling correction factor 1.303
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 0.727 0.557
DE 0.421 0.323
GB 3.273 2.511
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.998 0.998
Tucker-Lewis Index (TLI) 0.991 0.993
Robust Comparative Fit Index (CFI) 0.999
Robust Tucker-Lewis Index (TLI) 0.994
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24251.888 -24251.888
Scaling correction factor 1.153
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48553.776 48553.776
Bayesian (BIC) 48720.605 48720.605
Sample-size adjusted Bayesian (BIC) 48641.162 48641.162
Root Mean Square Error of Approximation:
RMSEA 0.025 0.019
90 Percent confidence interval - lower 0.000 0.000
90 Percent confidence interval - upper 0.057 0.048
P-value RMSEA <= 0.05 0.888 0.961
Robust RMSEA 0.022
90 Percent confidence interval - lower 0.000
90 Percent confidence interval - upper 0.060
Standardized Root Mean Square Residual:
SRMR 0.008 0.008
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.580 0.036 16.323 0.000 0.580 0.549
ipudrst (b) 0.596 0.036 16.538 0.000 0.596 0.544
impenv 0.656 0.046 14.229 0.000 0.656 0.625
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.293
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.879
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.781 0.055 14.310 0.000 0.781 0.699
.ipudrst 0.847 0.053 16.015 0.000 0.847 0.704
.impenv 0.672 0.056 11.973 0.000 0.672 0.610
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.580 0.036 16.323 0.000 0.475 0.498
ipudrst (b) 0.596 0.036 16.538 0.000 0.488 0.554
impenv (c) 0.548 0.056 9.862 0.000 0.449 0.472
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.367
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.629
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.672 0.090 7.448 0.000 1.000 1.000
.ipeqopt 0.686 0.040 17.221 0.000 0.686 0.752
.ipudrst 0.538 0.032 16.906 0.000 0.538 0.693
.impenv 0.706 0.034 20.755 0.000 0.706 0.778
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.580 0.036 16.323 0.000 0.621 0.585
ipudrst (b) 0.596 0.036 16.538 0.000 0.639 0.609
impenv 0.404 0.046 8.772 0.000 0.433 0.400
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.699
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.494
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.148 0.153 7.485 0.000 1.000 1.000
.ipeqopt 0.743 0.049 15.251 0.000 0.743 0.658
.ipudrst 0.693 0.047 14.757 0.000 0.693 0.630
.impenv 0.984 0.044 22.427 0.000 0.984 0.840
Comparing fit statistics
Now we want to see if there is a partial metric measurement invariance after the free computation of impenv.
compFit.universalism2 <- compareFit(
# scalar = universalism_fit_scalar2,
metric = universalism_fit_metric_partial,
config = universalism_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.universalism2,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 48553 48734 0.0000
metric 2 48554 48721 4.4206 3.3917 2 0.1834
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 3.392 2 .183 .019 0.998 .993
srmr aic bic
config .000† 48553.355† 48733.531
metric .008 48553.776 48720.605†
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 2 0.019 -0.002 -0.007 0.008 0.421
bic
metric - config -12.926
In fact, there is a partial metric measurement invariance, since both the strict \(\chi^2\) difference test is insignificant and the alternative fit measures CFI and RMSEA are below their cut off.
Since two variables must be completely invariant in order to be able to speak of partial measurement invariance, we can only let impenv freely calculate the intercepts here.
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
universalism_fit_scalar_partial <- cfa(
model = "
group: [CZ]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + NA*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ NA*1
uni ~ 0*1
uni ~~ 1*uni
group: [DE]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + c*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ f*1
uni ~ NA*1
uni ~~ NA*uni
group: [GB]
uni =~ NA*ipeqopt + a*ipeqopt + b*ipudrst + NA*impenv
ipeqopt ~ d*1
ipudrst ~ e*1
impenv ~ NA*1
uni ~ NA*1
uni ~~ NA*uni
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = universalism_fit_scalar_partial,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 63 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 31
Number of equality constraints 8
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 13.266 11.028
Degrees of freedom 4 4
P-value (Chi-square) 0.010 0.026
Scaling correction factor 1.203
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 2.958 2.459
DE 5.203 4.325
GB 5.105 4.243
Model Test Baseline Model:
Test statistic 1289.722 877.559
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.470
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.993 0.992
Tucker-Lewis Index (TLI) 0.984 0.982
Robust Comparative Fit Index (CFI) 0.993
Robust Tucker-Lewis Index (TLI) 0.985
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -24256.311 -24256.311
Scaling correction factor 1.007
for the MLR correction
Loglikelihood unrestricted model (H1) -24249.678 -24249.678
Scaling correction factor 1.335
for the MLR correction
Akaike (AIC) 48558.621 48558.621
Bayesian (BIC) 48712.104 48712.104
Sample-size adjusted Bayesian (BIC) 48639.017 48639.017
Root Mean Square Error of Approximation:
RMSEA 0.034 0.030
90 Percent confidence interval - lower 0.015 0.011
90 Percent confidence interval - upper 0.056 0.050
P-value RMSEA <= 0.05 0.875 0.951
Robust RMSEA 0.033
90 Percent confidence interval - lower 0.010
90 Percent confidence interval - upper 0.057
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.557 0.032 17.635 0.000 0.557 0.530
ipudrst (b) 0.617 0.034 18.036 0.000 0.617 0.560
impenv 0.654 0.046 14.108 0.000 0.654 0.623
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.529 0.026 174.653 0.000 4.529 4.305
.ipudrst (e) 4.260 0.028 152.649 0.000 4.260 3.870
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
uni 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.000 1.000 1.000
.ipeqopt 0.797 0.050 15.880 0.000 0.797 0.720
.ipudrst 0.831 0.052 15.953 0.000 0.831 0.686
.impenv 0.674 0.056 11.936 0.000 0.674 0.611
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.557 0.032 17.635 0.000 0.456 0.479
ipudrst (b) 0.617 0.034 18.036 0.000 0.505 0.572
impenv (c) 0.545 0.056 9.746 0.000 0.446 0.468
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.529 0.026 174.653 0.000 4.529 4.752
.ipudrst (e) 4.260 0.028 152.649 0.000 4.260 4.824
.impenv (f) 4.391 0.062 70.616 0.000 4.391 4.609
uni 1.111 0.071 15.628 0.000 1.357 1.357
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 0.671 0.090 7.421 0.000 1.000 1.000
.ipeqopt 0.700 0.040 17.625 0.000 0.700 0.771
.ipudrst 0.525 0.033 16.035 0.000 0.525 0.673
.impenv 0.708 0.034 20.745 0.000 0.708 0.781
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni =~
ipeqopt (a) 0.557 0.032 17.635 0.000 0.599 0.564
ipudrst (b) 0.617 0.034 18.036 0.000 0.663 0.630
impenv 0.404 0.046 8.804 0.000 0.434 0.401
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (d) 4.529 0.026 174.653 0.000 4.529 4.268
.ipudrst (e) 4.260 0.028 152.649 0.000 4.260 4.050
.impenv 4.534 0.047 96.204 0.000 4.534 4.188
uni 0.778 0.065 12.056 0.000 0.724 0.724
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
uni 1.154 0.155 7.462 0.000 1.000 1.000
.ipeqopt 0.768 0.045 16.973 0.000 0.768 0.682
.ipudrst 0.667 0.045 14.989 0.000 0.667 0.603
.impenv 0.984 0.044 22.489 0.000 0.984 0.839
compFit.universalism3 <- compareFit(
scalar = universalism_fit_scalar_partial,
metric = universalism_fit_metric_partial,
config = universalism_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.universalism3,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 48553 48734 0.0000
metric 2 48554 48721 4.4206 3.3917 2 0.18345
scalar 4 48559 48712 13.2661 8.0224 2 0.01811 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 3.392 2 .183 .019 0.998 .993
scalar 11.028 4 .026 .030 .992 .982
srmr aic bic
config .000† 48553.355† 48733.531
metric .008 48553.776 48720.605
scalar .014 48558.621 48712.104†
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 2 0.019 -0.002 -0.007 0.008 0.421
scalar - metric 2 0.011 -0.006 -0.011 0.007 4.846
bic
metric - config -12.926
scalar - metric -8.501
Finally, there is now a partial scalar measurement invariance. Although the stricter \(\chi^2\) difference test is insignificant, the CFI and RMSEA hardly deviate from the partially metric invariance model and thus fulfill the criteria according to Chen (2007). We can interpret the relative latent means as follows.
Result
So we can see that in relation to CZ the countries DE and GB have a significantly higher latent mean (see Intercepts uni).
Since we only calculate three factor loadings in our measurement model and we only have a partial measurement invariance if two factor loadings are measurement invariant, we have to use the fixed factor method to calculate all factor loadings.
tradition_conformity_fit_scalar %>%
lavTestScore() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
test | X2 | df | p.value
-----------------------------
score | 155.63 | 10 | 0
lhs | op | rhs | X2 | df | p.value
------------------------------------------
.p2. | == | .p13. | 1.19 | 1 | 0.27
.p2. | == | .p24. | 3.84 | 1 | 0.05
.p3. | == | .p14. | 2.35 | 1 | 0.13
.p3. | == | .p25. | 12.14 | 1 | 4.95e-04
.p8. | == | .p19. | 8.61 | 1 | 3.34e-03
.p8. | == | .p30. | 0.19 | 1 | 0.66
.p9. | == | .p20. | 13.73 | 1 | 2.11e-04
.p9. | == | .p31. | 36.15 | 1 | 1.82e-09
.p10. | == | .p21. | 2.09 | 1 | 0.15
.p10. | == | .p32. | 45.44 | 1 | 1.58e-11
.p10. == .p32. -> Constraint with the largest \(\chi^2\) reduction
What do the parameter labels (.p10. & .p32.) mean?
tradition_conformity_fit_scalar %>%
parTable() %>%
select(lhs, op, rhs, group, label, plabel, est, se) %>%
# optional for better display
export_table(table_width = 1, digits = 2)
lhs | op | rhs | group | label | plabel | est | se
------------------------------------------------------------------------------------------
TraditionConformity | =~ | imptrad | 1 | | .p1. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 1 | .p2. | .p2. | 1.48 | 0.09
TraditionConformity | =~ | ipbhprp | 1 | .p3. | .p3. | 1.17 | 0.05
imptrad | ~~ | imptrad | 1 | | .p4. | 1.31 | 0.07
ipfrule | ~~ | ipfrule | 1 | | .p5. | 0.68 | 0.06
ipbhprp | ~~ | ipbhprp | 1 | | .p6. | 0.97 | 0.06
TraditionConformity | ~~ | TraditionConformity | 1 | | .p7. | 0.29 | 0.03
imptrad | ~1 | | 1 | .p8. | .p8. | 4.48 | 0.03
ipfrule | ~1 | | 1 | .p9. | .p9. | 4.20 | 0.04
ipbhprp | ~1 | | 1 | .p10. | .p10. | 4.63 | 0.02
TraditionConformity | ~1 | | 1 | | .p11. | 0.00 | 0.00
TraditionConformity | =~ | imptrad | 2 | | .p12. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 2 | .p2. | .p13. | 1.48 | 0.09
TraditionConformity | =~ | ipbhprp | 2 | .p3. | .p14. | 1.17 | 0.05
imptrad | ~~ | imptrad | 2 | | .p15. | 1.50 | 0.05
ipfrule | ~~ | ipfrule | 2 | | .p16. | 1.14 | 0.06
ipbhprp | ~~ | ipbhprp | 2 | | .p17. | 1.13 | 0.05
TraditionConformity | ~~ | TraditionConformity | 2 | | .p18. | 0.39 | 0.03
imptrad | ~1 | | 2 | .p8. | .p19. | 4.48 | 0.03
ipfrule | ~1 | | 2 | .p9. | .p20. | 4.20 | 0.04
ipbhprp | ~1 | | 2 | .p10. | .p21. | 4.63 | 0.02
TraditionConformity | ~1 | | 2 | | .p22. | -0.49 | 0.03
TraditionConformity | =~ | imptrad | 3 | | .p23. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 3 | .p2. | .p24. | 1.48 | 0.09
TraditionConformity | =~ | ipbhprp | 3 | .p3. | .p25. | 1.17 | 0.05
imptrad | ~~ | imptrad | 3 | | .p26. | 1.62 | 0.06
ipfrule | ~~ | ipfrule | 3 | | .p27. | 1.18 | 0.07
ipbhprp | ~~ | ipbhprp | 3 | | .p28. | 1.07 | 0.05
TraditionConformity | ~~ | TraditionConformity | 3 | | .p29. | 0.42 | 0.04
imptrad | ~1 | | 3 | .p8. | .p30. | 4.48 | 0.03
ipfrule | ~1 | | 3 | .p9. | .p31. | 4.20 | 0.04
ipbhprp | ~1 | | 3 | .p10. | .p32. | 4.63 | 0.02
TraditionConformity | ~1 | | 3 | | .p33. | -0.33 | 0.03
.p2. | == | .p13. | 0 | | | 0.00 | 0.00
.p2. | == | .p24. | 0 | | | 6.66e-16 | 0.00
.p3. | == | .p14. | 0 | | | -4.44e-16 | 0.00
.p3. | == | .p25. | 0 | | | 2.22e-16 | 0.00
.p8. | == | .p19. | 0 | | | 0.00 | 0.00
.p8. | == | .p30. | 0 | | | 0.00 | 0.00
.p9. | == | .p20. | 0 | | | -1.78e-15 | 0.00
.p9. | == | .p31. | 0 | | | 8.88e-16 | 0.00
.p10. | == | .p21. | 0 | | | -8.88e-16 | 0.00
.p10. | == | .p32. | 0 | | | 0.00 | 0.00
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
tradition_conformity_fit_scalar_partial <- cfa(
model = "
group: [CZ]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ NA*1
TraditionConformity ~ 0*1
TraditionConformity ~~ 1*TraditionConformity
group: [DE]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ f*1
TraditionConformity ~ NA*1
TraditionConformity ~~ NA*TraditionConformity
group: [GB]
TraditionConformity =~ NA*imptrad + a*imptrad + b*ipfrule + c*ipbhprp
imptrad ~ d*1
ipfrule ~ e*1
ipbhprp ~ NA*1
TraditionConformity ~ NA*1
TraditionConformity ~~ NA*TraditionConformity
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = tradition_conformity_fit_scalar_partial,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 63 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 31
Number of equality constraints 10
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 48.657 43.508
Degrees of freedom 6 6
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.118
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 33.687 30.122
DE 7.852 7.021
GB 7.118 6.364
Model Test Baseline Model:
Test statistic 1721.409 1289.802
Degrees of freedom 9 9
P-value 0.000 0.000
Scaling correction factor 1.335
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.975 0.971
Tucker-Lewis Index (TLI) 0.963 0.956
Robust Comparative Fit Index (CFI) 0.975
Robust Tucker-Lewis Index (TLI) 0.963
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -28946.545 -28946.545
Scaling correction factor 0.678
for the MLR correction
Loglikelihood unrestricted model (H1) -28922.216 -28922.216
Scaling correction factor 1.027
for the MLR correction
Akaike (AIC) 57935.090 57935.090
Bayesian (BIC) 58075.227 58075.227
Sample-size adjusted Bayesian (BIC) 58008.495 58008.495
Root Mean Square Error of Approximation:
RMSEA 0.060 0.057
90 Percent confidence interval - lower 0.045 0.042
90 Percent confidence interval - upper 0.077 0.072
P-value RMSEA <= 0.05 0.123 0.210
Robust RMSEA 0.060
90 Percent confidence interval - lower 0.044
90 Percent confidence interval - upper 0.077
Standardized Root Mean Square Residual:
SRMR 0.025 0.025
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.523 0.026 19.956 0.000 0.523 0.414
ipfrule (b) 0.739 0.030 24.768 0.000 0.739 0.650
ipbhprp (c) 0.730 0.036 20.467 0.000 0.730 0.625
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.541 0.026 177.503 0.000 4.541 3.596
.ipfrule (e) 4.261 0.031 136.512 0.000 4.261 3.753
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.832
TrdtnCnfrm 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.000 1.000 1.000
.imptrad 1.321 0.064 20.615 0.000 1.321 0.829
.ipfrule 0.744 0.053 13.912 0.000 0.744 0.577
.ipbhprp 0.833 0.060 13.791 0.000 0.833 0.610
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.523 0.026 19.956 0.000 0.600 0.438
ipfrule (b) 0.739 0.030 24.768 0.000 0.847 0.603
ipbhprp (c) 0.730 0.036 20.467 0.000 0.837 0.642
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.541 0.026 177.503 0.000 4.541 3.320
.ipfrule (e) 4.261 0.031 136.512 0.000 4.261 3.031
.ipbhprp (f) 4.860 0.054 90.674 0.000 4.860 3.726
TrdtnCnfrm -1.080 0.069 -15.540 0.000 -0.941 -0.941
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.316 0.111 11.881 0.000 1.000 1.000
.imptrad 1.511 0.046 33.169 0.000 1.511 0.808
.ipfrule 1.259 0.052 24.238 0.000 1.259 0.637
.ipbhprp 1.000 0.053 19.015 0.000 1.000 0.588
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditionConformity =~
imptrad (a) 0.523 0.026 19.956 0.000 0.620 0.436
ipfrule (b) 0.739 0.030 24.768 0.000 0.876 0.609
ipbhprp (c) 0.730 0.036 20.467 0.000 0.865 0.670
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imptrad (d) 4.541 0.026 177.503 0.000 4.541 3.194
.ipfrule (e) 4.261 0.031 136.512 0.000 4.261 2.961
.ipbhprp 4.974 0.051 96.586 0.000 4.974 3.852
TrdtnCnfrm -0.835 0.068 -12.192 0.000 -0.704 -0.704
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
TraditnCnfrmty 1.406 0.126 11.186 0.000 1.000 1.000
.imptrad 1.637 0.054 30.133 0.000 1.637 0.810
.ipfrule 1.304 0.065 20.019 0.000 1.304 0.630
.ipbhprp 0.919 0.061 15.173 0.000 0.919 0.551
compFit.tradition_conformity3 <- compareFit(
scalar = tradition_conformity_fit_scalar_partial,
metric = tradition_conformity_fit_metric,
config = tradition_conformity_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.tradition_conformity3,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 0 57898 58079 0.0000
metric 4 57897 58050 6.3664 5.479 4 0.2415
scalar 6 57935 58075 48.6573 41.005 2 1.247e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config .000† NA .000† 1.000† 1.000†
metric 5.479 4 .242 .014 0.999 0.997
scalar 43.508 6 .000 .057 .971 .956
srmr aic bic
config .000† 57898.433 58078.609
metric .010 57896.799† 58050.282†
scalar .025 57935.090 58075.227
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 4 0.014 -0.001 -0.003 0.010 -1.634
scalar - metric 2 0.043 -0.028 -0.041 0.015 38.291
bic
metric - config -28.326
scalar - metric 24.945
In this case there is no partial scalar measurement invariance, as long as we apply the stricter \(\chi^2\) differences test and stick to the cut-off criteria according to Chen (2007) Nevertheless, the model shows a very good data fit and it is up to us to decide whether to assume partial scalar measurement invariance or not. This could be explained above all by the fact that Chen (2007) results are only based on simulations and we are dealing with real data here.
Result
DE and GB have a significantly lower relative latent mean than CZ in terms of tradition/conformity.
Now that we can work with four indicators, we will use the Reference indicator method for this example.
perceived_threat_fit_scalar %>%
lavTestScore() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
test | X2 | df | p.value
-----------------------------
score | 130.55 | 14 | 0
lhs | op | rhs | X2 | df | p.value
------------------------------------------
.p2. | == | .p17. | 1.02 | 1 | 0.31
.p2. | == | .p32. | 0.28 | 1 | 0.59
.p3. | == | .p18. | 3.19 | 1 | 0.07
.p3. | == | .p33. | 2.94 | 1 | 0.09
.p4. | == | .p19. | 1.69 | 1 | 0.19
.p4. | == | .p34. | 1.26 | 1 | 0.26
.p11. | == | .p26. | 61.95 | 1 | 3.55e-15
.p11. | == | .p41. | 11.52 | 1 | 6.89e-04
.p12. | == | .p27. | 10.85 | 1 | 9.89e-04
.p12. | == | .p42. | 7.63 | 1 | 5.73e-03
.p13. | == | .p28. | 18.77 | 1 | 1.48e-05
.p13. | == | .p43. | 3.77 | 1 | 0.05
.p14. | == | .p29. | 1.34 | 1 | 0.25
.p14. | == | .p44. | 12.16 | 1 | 4.89e-04
.p11. == .p26. -> Constraint with the largest \(\chi^2\) reduction
What do the parameter labels (.p11. & .p26.) mean?
perceived_threat_fit_scalar %>%
parTable() %>%
select(lhs, op, rhs, group, label, plabel, est, se) %>%
# optional for better display
export_table(table_width = 1, digits = 2)
lhs | op | rhs | group | label | plabel | est | se
----------------------------------------------------------------------------------
PerceivedThreat | =~ | imbgeco | 1 | | .p1. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 1 | .p2. | .p2. | 1.00 | 0.02
PerceivedThreat | =~ | imtcjob | 1 | .p3. | .p3. | 0.79 | 0.02
PerceivedThreat | =~ | rlgueim | 1 | .p4. | .p4. | 0.58 | 0.02
imueclt | ~~ | rlgueim | 1 | | .p5. | 0.35 | 0.11
imbgeco | ~~ | imbgeco | 1 | | .p6. | 1.70 | 0.13
imueclt | ~~ | imueclt | 1 | | .p7. | 1.63 | 0.14
imtcjob | ~~ | imtcjob | 1 | | .p8. | 2.89 | 0.15
rlgueim | ~~ | rlgueim | 1 | | .p9. | 3.14 | 0.17
PerceivedThreat | ~~ | PerceivedThreat | 1 | | .p10. | 2.58 | 0.14
imbgeco | ~1 | | 1 | .p11. | .p11. | 6.41 | 0.05
imueclt | ~1 | | 1 | .p12. | .p12. | 6.12 | 0.05
imtcjob | ~1 | | 1 | .p13. | .p13. | 6.31 | 0.05
rlgueim | ~1 | | 1 | .p14. | .p14. | 6.14 | 0.04
PerceivedThreat | ~1 | | 1 | | .p15. | 0.00 | 0.00
PerceivedThreat | =~ | imbgeco | 2 | | .p16. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 2 | .p2. | .p17. | 1.00 | 0.02
PerceivedThreat | =~ | imtcjob | 2 | .p3. | .p18. | 0.79 | 0.02
PerceivedThreat | =~ | rlgueim | 2 | .p4. | .p19. | 0.58 | 0.02
imueclt | ~~ | rlgueim | 2 | | .p20. | 0.85 | 0.09
imbgeco | ~~ | imbgeco | 2 | | .p21. | 1.98 | 0.11
imueclt | ~~ | imueclt | 2 | | .p22. | 2.63 | 0.12
imtcjob | ~~ | imtcjob | 2 | | .p23. | 2.38 | 0.11
rlgueim | ~~ | rlgueim | 2 | | .p24. | 3.26 | 0.11
PerceivedThreat | ~~ | PerceivedThreat | 2 | | .p25. | 3.14 | 0.14
imbgeco | ~1 | | 2 | .p11. | .p26. | 6.41 | 0.05
imueclt | ~1 | | 2 | .p12. | .p27. | 6.12 | 0.05
imtcjob | ~1 | | 2 | .p13. | .p28. | 6.31 | 0.05
rlgueim | ~1 | | 2 | .p14. | .p29. | 6.14 | 0.04
PerceivedThreat | ~1 | | 2 | | .p30. | -2.31 | 0.06
PerceivedThreat | =~ | imbgeco | 3 | | .p31. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 3 | .p2. | .p32. | 1.00 | 0.02
PerceivedThreat | =~ | imtcjob | 3 | .p3. | .p33. | 0.79 | 0.02
PerceivedThreat | =~ | rlgueim | 3 | .p4. | .p34. | 0.58 | 0.02
imueclt | ~~ | rlgueim | 3 | | .p35. | 1.01 | 0.13
imbgeco | ~~ | imbgeco | 3 | | .p36. | 1.85 | 0.13
imueclt | ~~ | imueclt | 3 | | .p37. | 2.80 | 0.17
imtcjob | ~~ | imtcjob | 3 | | .p38. | 2.90 | 0.15
rlgueim | ~~ | rlgueim | 3 | | .p39. | 3.69 | 0.15
PerceivedThreat | ~~ | PerceivedThreat | 3 | | .p40. | 4.27 | 0.18
imbgeco | ~1 | | 3 | .p11. | .p41. | 6.41 | 0.05
imueclt | ~1 | | 3 | .p12. | .p42. | 6.12 | 0.05
imtcjob | ~1 | | 3 | .p13. | .p43. | 6.31 | 0.05
rlgueim | ~1 | | 3 | .p14. | .p44. | 6.14 | 0.04
PerceivedThreat | ~1 | | 3 | | .p45. | -1.24 | 0.07
.p2. | == | .p17. | 0 | | | -6.66e-16 | 0.00
.p2. | == | .p32. | 0 | | | 2.22e-16 | 0.00
.p3. | == | .p18. | 0 | | | 0.00 | 0.00
.p3. | == | .p33. | 0 | | | -2.22e-16 | 0.00
.p4. | == | .p19. | 0 | | | -2.22e-16 | 0.00
.p4. | == | .p34. | 0 | | | 4.44e-16 | 0.00
.p11. | == | .p26. | 0 | | | 0.00 | 0.00
.p11. | == | .p41. | 0 | | | 1.78e-15 | 0.00
.p12. | == | .p27. | 0 | | | -8.88e-16 | 0.00
.p12. | == | .p42. | 0 | | | 1.78e-15 | 0.00
.p13. | == | .p28. | 0 | | | -1.78e-15 | 0.00
.p13. | == | .p43. | 0 | | | 1.78e-15 | 0.00
.p14. | == | .p29. | 0 | | | -8.88e-16 | 0.00
.p14. | == | .p44. | 0 | | | -8.88e-16 | 0.00
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
perceived_threat_fit_scalar_partial <- cfa(
model = "
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
group.partial = c("imbgeco~1"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = perceived_threat_fit_scalar_partial,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 101 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 41
Number of equality constraints 12
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 116.715 93.260
Degrees of freedom 13 13
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.251
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 32.589 26.040
DE 33.899 27.087
GB 50.227 40.133
Model Test Baseline Model:
Test statistic 7153.396 4187.890
Degrees of freedom 18 18
P-value 0.000 0.000
Scaling correction factor 1.708
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.985 0.981
Tucker-Lewis Index (TLI) 0.980 0.973
Robust Comparative Fit Index (CFI) 0.986
Robust Tucker-Lewis Index (TLI) 0.980
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -48382.559 -48382.559
Scaling correction factor 0.925
for the MLR correction
Loglikelihood unrestricted model (H1) -48324.201 -48324.201
Scaling correction factor 1.290
for the MLR correction
Akaike (AIC) 96823.117 96823.117
Bayesian (BIC) 97016.639 97016.639
Sample-size adjusted Bayesian (BIC) 96924.485 96924.485
Root Mean Square Error of Approximation:
RMSEA 0.064 0.056
90 Percent confidence interval - lower 0.054 0.047
90 Percent confidence interval - upper 0.075 0.066
P-value RMSEA <= 0.05 0.014 0.130
Robust RMSEA 0.063
90 Percent confidence interval - lower 0.051
90 Percent confidence interval - upper 0.075
Standardized Root Mean Square Residual:
SRMR 0.028 0.028
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.704 0.815
imueclt (.p2.) 0.897 0.022 41.229 0.000 1.529 0.752
imtcjob (.p3.) 0.721 0.018 40.135 0.000 1.230 0.587
rlgueim (.p4.) 0.518 0.019 27.244 0.000 0.883 0.441
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.464 0.115 4.045 0.000 0.464 0.193
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.021
.imueclt (.12.) 6.178 0.052 118.135 0.000 6.178 3.038
.imtcjob (.13.) 6.390 0.052 121.773 0.000 6.390 3.050
.rlgueim (.14.) 6.172 0.042 146.426 0.000 6.172 3.086
PrcvdTh 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.466 0.137 10.688 0.000 1.466 0.335
.imueclt 1.799 0.135 13.304 0.000 1.799 0.435
.imtcjob 2.878 0.150 19.141 0.000 2.878 0.656
.rlgueim 3.221 0.170 18.971 0.000 3.221 0.805
PerceivedThret 2.905 0.157 18.504 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 1.889 0.822
imueclt (.p2.) 0.897 0.022 41.229 0.000 1.694 0.714
imtcjob (.p3.) 0.721 0.018 40.135 0.000 1.363 0.659
rlgueim (.p4.) 0.518 0.019 27.244 0.000 0.978 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.946 0.090 10.483 0.000 0.946 0.312
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.921 0.094 73.874 0.000 6.921 3.012
.imueclt (.12.) 6.178 0.052 118.135 0.000 6.178 2.602
.imtcjob (.13.) 6.390 0.052 121.773 0.000 6.390 3.088
.rlgueim (.14.) 6.172 0.042 146.426 0.000 6.172 2.981
PrcvdTh -2.719 0.097 -28.008 0.000 -1.439 -1.439
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.711 0.123 13.943 0.000 1.711 0.324
.imueclt 2.764 0.117 23.563 0.000 2.764 0.490
.imtcjob 2.426 0.108 22.530 0.000 2.426 0.566
.rlgueim 3.329 0.112 29.829 0.000 3.329 0.777
PerceivedThret 3.569 0.166 21.516 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
PerceivedThreat =~
imbgeco 1.000 2.176 0.868
imueclt (.p2.) 0.897 0.022 41.229 0.000 1.952 0.748
imtcjob (.p3.) 0.721 0.018 40.135 0.000 1.570 0.671
rlgueim (.p4.) 0.518 0.019 27.244 0.000 1.127 0.501
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.147 0.135 8.501 0.000 1.147 0.340
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 6.489 0.084 76.940 0.000 6.489 2.588
.imueclt (.12.) 6.178 0.052 118.135 0.000 6.178 2.366
.imtcjob (.13.) 6.390 0.052 121.773 0.000 6.390 2.731
.rlgueim (.14.) 6.172 0.042 146.426 0.000 6.172 2.745
PrcvdTh -1.391 0.094 -14.785 0.000 -0.639 -0.639
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imbgeco 1.551 0.146 10.636 0.000 1.551 0.247
.imueclt 3.006 0.173 17.374 0.000 3.006 0.441
.imtcjob 3.010 0.150 20.034 0.000 3.010 0.550
.rlgueim 3.784 0.156 24.237 0.000 3.784 0.749
PerceivedThret 4.737 0.200 23.637 0.000 1.000 1.000
compFit.perceived_threat3 <- compareFit(
scalar = perceived_threat_fit_scalar_partial,
metric = perceived_threat_fit_metric,
config = perceived_threat_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.perceived_threat3,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 3 96778 97038 51.626
metric 9 96785 97006 70.959 15.303 6 0.01803 *
scalar 13 96823 97017 116.715 44.312 4 5.526e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 33.973† 3 .000 .073 .993† .955
metric 52.609 9 .000 .050† .990 .979†
scalar 93.260 13 .000 .056 .981 .973
srmr aic bic
config .014† 96778.028† 97038.282
metric .021 96785.361 97005.576†
scalar .028 96823.117 97016.639
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 6 -0.023 -0.003 0.024 0.007 7.333
scalar - metric 4 0.006 -0.009 -0.006 0.007 37.756
bic
metric - config -32.706
scalar - metric 11.063
Result
DE and GB have a significantly lower relative latent mean than CZ in terms of perceived threat.
scfa_fit <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 51 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 5844
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 468.610 407.761
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.149
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 13722.205 11027.357
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.244
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.968 0.966
Tucker-Lewis Index (TLI) 0.954 0.950
Robust Comparative Fit Index (CFI) 0.968
Robust Tucker-Lewis Index (TLI) 0.954
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -102343.336 -102343.336
Scaling correction factor 1.181
for the MLR correction
Loglikelihood unrestricted model (H1) -102109.031 -102109.031
Scaling correction factor 1.166
for the MLR correction
Akaike (AIC) 204754.672 204754.672
Bayesian (BIC) 204981.560 204981.560
Sample-size adjusted Bayesian (BIC) 204873.517 204873.517
Root Mean Square Error of Approximation:
RMSEA 0.049 0.046
90 Percent confidence interval - lower 0.045 0.042
90 Percent confidence interval - upper 0.053 0.049
P-value RMSEA <= 0.05 0.631 0.974
Robust RMSEA 0.049
90 Percent confidence interval - lower 0.045
90 Percent confidence interval - upper 0.053
Standardized Root Mean Square Residual:
SRMR 0.034 0.034
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.593 0.570
ipudrst 1.075 0.048 22.346 0.000 0.638 0.621
impenv 0.827 0.042 19.872 0.000 0.491 0.479
TraditionConformity =~
imptrad 1.000 0.692 0.502
ipfrule 1.203 0.054 22.315 0.000 0.833 0.598
ipbhprp 1.203 0.053 22.636 0.000 0.832 0.650
PerceivedThreat =~
imbgeco 1.000 2.038 0.826
imueclt 1.022 0.019 53.594 0.000 2.083 0.808
imtcjob 0.784 0.015 50.980 0.000 1.598 0.694
rlgueim 0.597 0.018 32.807 0.000 1.216 0.556
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.689 0.070 9.832 0.000 0.689 0.250
Universalism ~~
TraditnCnfrmty 0.093 0.011 8.664 0.000 0.227 0.227
PerceivedThret -0.537 0.029 -18.337 0.000 -0.444 -0.444
TraditionConformity ~~
PerceivedThret 0.414 0.032 13.083 0.000 0.293 0.293
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.945 0.014 363.381 0.000 4.945 4.753
.ipudrst 4.717 0.013 351.024 0.000 4.717 4.592
.impenv 4.878 0.013 363.981 0.000 4.878 4.761
.imptrad 4.155 0.018 230.189 0.000 4.155 3.011
.ipfrule 3.700 0.018 203.091 0.000 3.700 2.657
.ipbhprp 4.258 0.017 254.054 0.000 4.258 3.323
.imbgeco 4.979 0.032 154.352 0.000 4.979 2.019
.imueclt 4.696 0.034 139.327 0.000 4.696 1.823
.imtcjob 5.187 0.030 172.337 0.000 5.187 2.254
.rlgueim 5.318 0.029 185.807 0.000 5.318 2.431
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.731 0.027 27.149 0.000 0.731 0.675
.ipudrst 0.649 0.023 28.073 0.000 0.649 0.615
.impenv 0.809 0.022 36.660 0.000 0.809 0.771
.imptrad 1.425 0.036 39.889 0.000 1.425 0.748
.ipfrule 1.247 0.039 32.266 0.000 1.247 0.643
.ipbhprp 0.948 0.035 27.045 0.000 0.948 0.578
.imbgeco 1.928 0.083 23.216 0.000 1.928 0.317
.imueclt 2.302 0.095 24.117 0.000 2.302 0.347
.imtcjob 2.742 0.084 32.810 0.000 2.742 0.518
.rlgueim 3.308 0.084 39.362 0.000 3.308 0.691
Universalism 0.352 0.023 15.526 0.000 1.000 1.000
TraditnCnfrmty 0.479 0.032 15.030 0.000 1.000 1.000
PerceivedThret 4.153 0.119 34.859 0.000 1.000 1.000
scfa_plot <- scfa_fit %>%
semPaths(
whatLabels = "std",
style = "mx",
layout = "tree2",
edge.color = "black",
intercepts = F,
sizeMan = 8,
sizeLat = 10,
edge.label.cex = .65,
nCharNodes = 50
)
scfa_plot %>%
mark_sig(scfa_fit) %>%
plot()
Reference indicator method
scfa_fit_countries <- ESS07_countries %>%
map(~ cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
scfa_fit_countries %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 48 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 82.379 65.825
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.251
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2762.391 2047.305
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.349
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.981 0.983
Tucker-Lewis Index (TLI) 0.973 0.975
Robust Comparative Fit Index (CFI) 0.984
Robust Tucker-Lewis Index (TLI) 0.977
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -23420.016 -23420.016
Scaling correction factor 1.252
for the MLR correction
Loglikelihood unrestricted model (H1) -23378.827 -23378.827
Scaling correction factor 1.252
for the MLR correction
Akaike (AIC) 46908.033 46908.033
Bayesian (BIC) 47086.166 47086.166
Sample-size adjusted Bayesian (BIC) 46978.161 46978.161
Root Mean Square Error of Approximation:
RMSEA 0.034 0.028
90 Percent confidence interval - lower 0.026 0.020
90 Percent confidence interval - upper 0.044 0.037
P-value RMSEA <= 0.05 0.998 1.000
Robust RMSEA 0.032
90 Percent confidence interval - lower 0.021
90 Percent confidence interval - upper 0.042
Standardized Root Mean Square Residual:
SRMR 0.023 0.023
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.598 0.563
ipudrst 0.986 0.085 11.621 0.000 0.590 0.541
impenv 1.076 0.081 13.358 0.000 0.644 0.613
TraditionConformity =~
imptrad 1.000 0.610 0.478
ipfrule 1.064 0.095 11.236 0.000 0.649 0.581
ipbhprp 1.294 0.106 12.177 0.000 0.790 0.673
PerceivedThreat =~
imbgeco 1.000 1.674 0.803
imueclt 0.922 0.052 17.870 0.000 1.544 0.760
imtcjob 0.756 0.042 18.018 0.000 1.266 0.603
rlgueim 0.527 0.051 10.285 0.000 0.883 0.443
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.424 0.135 3.149 0.002 0.424 0.180
Universalism ~~
TraditnCnfrmty 0.304 0.028 10.974 0.000 0.833 0.833
PerceivedThret -0.061 0.040 -1.505 0.132 -0.061 -0.061
TraditionConformity ~~
PerceivedThret 0.059 0.042 1.405 0.160 0.058 0.058
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.769 0.052 14.837 0.000 0.769 0.683
.ipudrst 0.842 0.046 18.413 0.000 0.842 0.708
.impenv 0.687 0.041 16.774 0.000 0.687 0.624
.imptrad 1.259 0.065 19.227 0.000 1.259 0.772
.ipfrule 0.826 0.052 15.934 0.000 0.826 0.662
.ipbhprp 0.751 0.059 12.817 0.000 0.751 0.546
.imbgeco 1.548 0.176 8.789 0.000 1.548 0.356
.imueclt 1.748 0.167 10.467 0.000 1.748 0.423
.imtcjob 2.808 0.162 17.369 0.000 2.808 0.637
.rlgueim 3.183 0.184 17.274 0.000 3.183 0.803
Universalism 0.358 0.043 8.394 0.000 1.000 1.000
TraditnCnfrmty 0.373 0.051 7.343 0.000 1.000 1.000
PerceivedThret 2.803 0.204 13.711 0.000 1.000 1.000
$DE
lavaan 0.6-12 ended normally after 56 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 248.043 216.303
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.147
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 4882.446 3971.444
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.229
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.955 0.953
Tucker-Lewis Index (TLI) 0.935 0.931
Robust Comparative Fit Index (CFI) 0.956
Robust Tucker-Lewis Index (TLI) 0.936
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -45849.058 -45849.058
Scaling correction factor 1.236
for the MLR correction
Loglikelihood unrestricted model (H1) -45725.037 -45725.037
Scaling correction factor 1.193
for the MLR correction
Akaike (AIC) 91766.116 91766.116
Bayesian (BIC) 91966.383 91966.383
Sample-size adjusted Bayesian (BIC) 91858.355 91858.355
Root Mean Square Error of Approximation:
RMSEA 0.051 0.047
90 Percent confidence interval - lower 0.045 0.042
90 Percent confidence interval - upper 0.057 0.053
P-value RMSEA <= 0.05 0.357 0.778
Robust RMSEA 0.051
90 Percent confidence interval - lower 0.044
90 Percent confidence interval - upper 0.057
Standardized Root Mean Square Residual:
SRMR 0.033 0.033
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.482 0.504
ipudrst 1.014 0.090 11.266 0.000 0.489 0.556
impenv 0.918 0.083 11.098 0.000 0.442 0.464
TraditionConformity =~
imptrad 1.000 0.653 0.476
ipfrule 1.228 0.088 13.883 0.000 0.802 0.572
ipbhprp 1.289 0.098 13.146 0.000 0.841 0.645
PerceivedThreat =~
imbgeco 1.000 1.857 0.801
imueclt 0.941 0.039 24.317 0.000 1.748 0.741
imtcjob 0.705 0.025 27.981 0.000 1.309 0.639
rlgueim 0.559 0.032 17.465 0.000 1.039 0.501
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.776 0.100 7.799 0.000 0.776 0.273
Universalism ~~
TraditnCnfrmty 0.065 0.013 5.175 0.000 0.208 0.208
PerceivedThret -0.373 0.038 -9.755 0.000 -0.416 -0.416
TraditionConformity ~~
PerceivedThret 0.283 0.043 6.578 0.000 0.233 0.233
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.683 0.040 17.006 0.000 0.683 0.746
.ipudrst 0.535 0.029 18.522 0.000 0.535 0.691
.impenv 0.712 0.031 22.721 0.000 0.712 0.784
.imptrad 1.456 0.054 26.745 0.000 1.456 0.774
.ipfrule 1.318 0.056 23.689 0.000 1.318 0.672
.ipbhprp 0.996 0.057 17.345 0.000 0.996 0.585
.imbgeco 1.931 0.143 13.512 0.000 1.931 0.359
.imueclt 2.510 0.144 17.435 0.000 2.510 0.451
.imtcjob 2.483 0.116 21.351 0.000 2.483 0.592
.rlgueim 3.217 0.116 27.792 0.000 3.217 0.749
Universalism 0.232 0.029 7.884 0.000 1.000 1.000
TraditnCnfrmty 0.426 0.047 9.043 0.000 1.000 1.000
PerceivedThret 3.448 0.187 18.413 0.000 1.000 1.000
$GB
lavaan 0.6-12 ended normally after 52 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 224.751 205.610
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.093
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 4016.611 3319.780
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.210
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.951 0.947
Tucker-Lewis Index (TLI) 0.929 0.923
Robust Comparative Fit Index (CFI) 0.952
Robust Tucker-Lewis Index (TLI) 0.930
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -31756.147 -31756.147
Scaling correction factor 1.166
for the MLR correction
Loglikelihood unrestricted model (H1) -31643.772 -31643.772
Scaling correction factor 1.131
for the MLR correction
Akaike (AIC) 63580.295 63580.295
Bayesian (BIC) 63766.763 63766.763
Sample-size adjusted Bayesian (BIC) 63658.748 63658.748
Root Mean Square Error of Approximation:
RMSEA 0.059 0.056
90 Percent confidence interval - lower 0.052 0.049
90 Percent confidence interval - upper 0.067 0.063
P-value RMSEA <= 0.05 0.017 0.067
Robust RMSEA 0.059
90 Percent confidence interval - lower 0.051
90 Percent confidence interval - upper 0.067
Standardized Root Mean Square Residual:
SRMR 0.044 0.044
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.594 0.563
ipudrst 1.109 0.098 11.275 0.000 0.659 0.625
impenv 0.744 0.091 8.146 0.000 0.443 0.409
TraditionConformity =~
imptrad 1.000 0.738 0.512
ipfrule 1.142 0.095 11.963 0.000 0.842 0.589
ipbhprp 1.114 0.090 12.407 0.000 0.822 0.639
PerceivedThreat =~
imbgeco 1.000 2.052 0.826
imueclt 1.057 0.038 28.075 0.000 2.169 0.808
imtcjob 0.733 0.029 25.020 0.000 1.504 0.655
rlgueim 0.631 0.036 17.776 0.000 1.295 0.567
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.798 0.154 5.171 0.000 0.798 0.268
Universalism ~~
TraditnCnfrmty 0.106 0.022 4.786 0.000 0.241 0.241
PerceivedThret -0.490 0.063 -7.796 0.000 -0.402 -0.402
TraditionConformity ~~
PerceivedThret 0.328 0.059 5.521 0.000 0.217 0.217
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.763 0.050 15.275 0.000 0.763 0.683
.ipudrst 0.679 0.047 14.457 0.000 0.679 0.610
.impenv 0.976 0.043 22.514 0.000 0.976 0.833
.imptrad 1.529 0.068 22.449 0.000 1.529 0.737
.ipfrule 1.335 0.074 18.072 0.000 1.335 0.653
.ipbhprp 0.980 0.065 14.985 0.000 0.980 0.592
.imbgeco 1.958 0.159 12.297 0.000 1.958 0.317
.imueclt 2.498 0.205 12.164 0.000 2.498 0.347
.imtcjob 3.008 0.156 19.338 0.000 3.008 0.571
.rlgueim 3.538 0.167 21.171 0.000 3.538 0.678
Universalism 0.353 0.047 7.566 0.000 1.000 1.000
TraditnCnfrmty 0.544 0.065 8.340 0.000 1.000 1.000
PerceivedThret 4.211 0.223 18.859 0.000 1.000 1.000
Fixed factor method
scfa_fit_countries2 <- ESS07_countries %>%
map(~ cfa(
model = "
Universalism =~ NA*ipeqopt + ipudrst + impenv
Universalism ~~ 1*Universalism
TraditionConformity =~ NA*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ 1*TraditionConformity
PerceivedThreat =~ NA*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ 1*PerceivedThreat
",
data = .,
estimator = "MLR",
# optional if there are missing values
missing = "fiml.x"
))
scfa_fit_countries2 %>%
map(~ summary(
object = .,
fit.measures = T,
standardized = T
# rsquare = T
))
$CZ
lavaan 0.6-12 ended normally after 25 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 1393
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 82.379 65.825
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.251
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 2762.391 2047.305
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.349
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.981 0.983
Tucker-Lewis Index (TLI) 0.973 0.975
Robust Comparative Fit Index (CFI) 0.984
Robust Tucker-Lewis Index (TLI) 0.977
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -23420.016 -23420.016
Scaling correction factor 1.252
for the MLR correction
Loglikelihood unrestricted model (H1) -23378.827 -23378.827
Scaling correction factor 1.252
for the MLR correction
Akaike (AIC) 46908.033 46908.033
Bayesian (BIC) 47086.166 47086.166
Sample-size adjusted Bayesian (BIC) 46978.161 46978.161
Root Mean Square Error of Approximation:
RMSEA 0.034 0.028
90 Percent confidence interval - lower 0.026 0.020
90 Percent confidence interval - upper 0.044 0.037
P-value RMSEA <= 0.05 0.998 1.000
Robust RMSEA 0.032
90 Percent confidence interval - lower 0.021
90 Percent confidence interval - upper 0.042
Standardized Root Mean Square Residual:
SRMR 0.023 0.023
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.598 0.036 16.788 0.000 0.598 0.563
ipudrst 0.590 0.037 15.918 0.000 0.590 0.541
impenv 0.644 0.034 18.761 0.000 0.644 0.613
TraditionConformity =~
imptrad 0.610 0.042 14.687 0.000 0.610 0.478
ipfrule 0.649 0.038 17.268 0.000 0.649 0.581
ipbhprp 0.790 0.038 20.642 0.000 0.790 0.673
PerceivedThreat =~
imbgeco 1.674 0.061 27.423 0.000 1.674 0.803
imueclt 1.544 0.062 24.955 0.000 1.544 0.760
imtcjob 1.266 0.063 20.214 0.000 1.266 0.603
rlgueim 0.883 0.074 11.876 0.000 0.883 0.443
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.424 0.135 3.149 0.002 0.424 0.180
Universalism ~~
TraditnCnfrmty 0.833 0.039 21.543 0.000 0.833 0.833
PerceivedThret -0.061 0.040 -1.522 0.128 -0.061 -0.061
TraditionConformity ~~
PerceivedThret 0.058 0.041 1.407 0.159 0.058 0.058
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.769 0.052 14.837 0.000 0.769 0.683
.ipudrst 0.842 0.046 18.413 0.000 0.842 0.708
.impenv 0.687 0.041 16.774 0.000 0.687 0.624
.imptrad 1.259 0.065 19.227 0.000 1.259 0.772
.ipfrule 0.826 0.052 15.934 0.000 0.826 0.662
.ipbhprp 0.751 0.059 12.817 0.000 0.751 0.546
.imbgeco 1.548 0.176 8.790 0.000 1.548 0.356
.imueclt 1.748 0.167 10.467 0.000 1.748 0.423
.imtcjob 2.808 0.162 17.369 0.000 2.808 0.637
.rlgueim 3.183 0.184 17.274 0.000 3.183 0.803
$DE
lavaan 0.6-12 ended normally after 31 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 2671
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 248.043 216.303
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.147
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 4882.446 3971.444
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.229
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.955 0.953
Tucker-Lewis Index (TLI) 0.935 0.931
Robust Comparative Fit Index (CFI) 0.956
Robust Tucker-Lewis Index (TLI) 0.936
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -45849.058 -45849.058
Scaling correction factor 1.236
for the MLR correction
Loglikelihood unrestricted model (H1) -45725.037 -45725.037
Scaling correction factor 1.193
for the MLR correction
Akaike (AIC) 91766.116 91766.116
Bayesian (BIC) 91966.383 91966.383
Sample-size adjusted Bayesian (BIC) 91858.355 91858.355
Root Mean Square Error of Approximation:
RMSEA 0.051 0.047
90 Percent confidence interval - lower 0.045 0.042
90 Percent confidence interval - upper 0.057 0.053
P-value RMSEA <= 0.05 0.357 0.778
Robust RMSEA 0.051
90 Percent confidence interval - lower 0.044
90 Percent confidence interval - upper 0.057
Standardized Root Mean Square Residual:
SRMR 0.033 0.033
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.482 0.031 15.768 0.000 0.482 0.504
ipudrst 0.489 0.028 17.513 0.000 0.489 0.556
impenv 0.442 0.029 15.198 0.000 0.442 0.464
TraditionConformity =~
imptrad 0.653 0.036 18.086 0.000 0.653 0.476
ipfrule 0.802 0.035 22.658 0.000 0.802 0.572
ipbhprp 0.841 0.035 23.801 0.000 0.841 0.645
PerceivedThreat =~
imbgeco 1.857 0.050 36.827 0.000 1.857 0.801
imueclt 1.748 0.052 33.787 0.000 1.748 0.741
imtcjob 1.309 0.049 26.851 0.000 1.309 0.639
rlgueim 1.039 0.050 20.898 0.000 1.039 0.501
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.776 0.100 7.799 0.000 0.776 0.273
Universalism ~~
TraditnCnfrmty 0.208 0.038 5.419 0.000 0.208 0.208
PerceivedThret -0.416 0.033 -12.695 0.000 -0.416 -0.416
TraditionConformity ~~
PerceivedThret 0.233 0.031 7.572 0.000 0.233 0.233
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.683 0.040 17.006 0.000 0.683 0.746
.ipudrst 0.535 0.029 18.522 0.000 0.535 0.691
.impenv 0.712 0.031 22.721 0.000 0.712 0.784
.imptrad 1.456 0.054 26.745 0.000 1.456 0.774
.ipfrule 1.318 0.056 23.689 0.000 1.318 0.672
.ipbhprp 0.996 0.057 17.345 0.000 0.996 0.585
.imbgeco 1.931 0.143 13.512 0.000 1.931 0.359
.imueclt 2.510 0.144 17.435 0.000 2.510 0.451
.imtcjob 2.483 0.116 21.351 0.000 2.483 0.592
.rlgueim 3.217 0.116 27.792 0.000 3.217 0.749
$GB
lavaan 0.6-12 ended normally after 32 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 34
Number of observations 1780
Number of missing patterns 1
Model Test User Model:
Standard Robust
Test Statistic 224.751 205.610
Degrees of freedom 31 31
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.093
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 4016.611 3319.780
Degrees of freedom 45 45
P-value 0.000 0.000
Scaling correction factor 1.210
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.951 0.947
Tucker-Lewis Index (TLI) 0.929 0.923
Robust Comparative Fit Index (CFI) 0.952
Robust Tucker-Lewis Index (TLI) 0.930
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -31756.147 -31756.147
Scaling correction factor 1.166
for the MLR correction
Loglikelihood unrestricted model (H1) -31643.772 -31643.772
Scaling correction factor 1.131
for the MLR correction
Akaike (AIC) 63580.295 63580.295
Bayesian (BIC) 63766.763 63766.763
Sample-size adjusted Bayesian (BIC) 63658.748 63658.748
Root Mean Square Error of Approximation:
RMSEA 0.059 0.056
90 Percent confidence interval - lower 0.052 0.049
90 Percent confidence interval - upper 0.067 0.063
P-value RMSEA <= 0.05 0.017 0.067
Robust RMSEA 0.059
90 Percent confidence interval - lower 0.051
90 Percent confidence interval - upper 0.067
Standardized Root Mean Square Residual:
SRMR 0.044 0.044
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.594 0.039 15.133 0.000 0.594 0.563
ipudrst 0.659 0.039 17.100 0.000 0.659 0.625
impenv 0.443 0.041 10.792 0.000 0.443 0.409
TraditionConformity =~
imptrad 0.738 0.044 16.680 0.000 0.738 0.512
ipfrule 0.842 0.044 19.068 0.000 0.842 0.589
ipbhprp 0.822 0.041 20.185 0.000 0.822 0.639
PerceivedThreat =~
imbgeco 2.052 0.054 37.718 0.000 2.052 0.826
imueclt 2.169 0.059 37.074 0.000 2.169 0.808
imtcjob 1.504 0.058 25.804 0.000 1.504 0.655
rlgueim 1.295 0.063 20.558 0.000 1.295 0.567
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.798 0.154 5.171 0.000 0.798 0.268
Universalism ~~
TraditnCnfrmty 0.241 0.050 4.856 0.000 0.241 0.241
PerceivedThret -0.402 0.036 -11.317 0.000 -0.402 -0.402
TraditionConformity ~~
PerceivedThret 0.217 0.036 6.049 0.000 0.217 0.217
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.763 0.050 15.275 0.000 0.763 0.683
.ipudrst 0.679 0.047 14.457 0.000 0.679 0.610
.impenv 0.976 0.043 22.514 0.000 0.976 0.833
.imptrad 1.529 0.068 22.449 0.000 1.529 0.737
.ipfrule 1.335 0.074 18.072 0.000 1.335 0.653
.ipbhprp 0.980 0.065 14.985 0.000 0.980 0.592
.imbgeco 1.958 0.159 12.297 0.000 1.958 0.317
.imueclt 2.498 0.205 12.164 0.000 2.498 0.347
.imtcjob 3.008 0.156 19.338 0.000 3.008 0.571
.rlgueim 3.538 0.167 21.171 0.000 3.538 0.678
Reference indicator method
scfa_fit_config <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_config,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 130 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 102
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 555.173 477.046
Degrees of freedom 93 93
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.164
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 82.379 70.786
DE 248.043 213.137
GB 224.751 193.123
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.960 0.958
Tucker-Lewis Index (TLI) 0.942 0.939
Robust Comparative Fit Index (CFI) 0.961
Robust Tucker-Lewis Index (TLI) 0.944
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101025.222 -101025.222
Scaling correction factor 1.218
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202254.443 202254.443
Bayesian (BIC) 202935.107 202935.107
Sample-size adjusted Bayesian (BIC) 202610.980 202610.980
Root Mean Square Error of Approximation:
RMSEA 0.051 0.046
90 Percent confidence interval - lower 0.046 0.042
90 Percent confidence interval - upper 0.055 0.050
P-value RMSEA <= 0.05 0.410 0.956
Robust RMSEA 0.050
90 Percent confidence interval - lower 0.045
90 Percent confidence interval - upper 0.054
Standardized Root Mean Square Residual:
SRMR 0.034 0.034
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.598 0.563
ipudrst 0.986 0.085 11.621 0.000 0.590 0.541
impenv 1.076 0.081 13.358 0.000 0.644 0.613
TraditionConformity =~
imptrad 1.000 0.610 0.478
ipfrule 1.064 0.095 11.237 0.000 0.649 0.581
ipbhprp 1.294 0.106 12.178 0.000 0.790 0.673
PerceivedThreat =~
imbgeco 1.000 1.674 0.803
imueclt 0.922 0.052 17.870 0.000 1.544 0.760
imtcjob 0.756 0.042 18.018 0.000 1.266 0.603
rlgueim 0.527 0.051 10.285 0.000 0.883 0.443
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.424 0.135 3.149 0.002 0.424 0.180
Universalism ~~
TraditnCnfrmty 0.304 0.028 10.974 0.000 0.833 0.833
PerceivedThret -0.061 0.040 -1.505 0.132 -0.061 -0.061
TraditionConformity ~~
PerceivedThret 0.059 0.042 1.405 0.160 0.058 0.058
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.769 0.052 14.837 0.000 0.769 0.683
.ipudrst 0.842 0.046 18.413 0.000 0.842 0.708
.impenv 0.687 0.041 16.774 0.000 0.687 0.624
.imptrad 1.259 0.065 19.227 0.000 1.259 0.772
.ipfrule 0.826 0.052 15.934 0.000 0.826 0.662
.ipbhprp 0.751 0.059 12.817 0.000 0.751 0.546
.imbgeco 1.548 0.176 8.789 0.000 1.548 0.356
.imueclt 1.748 0.167 10.467 0.000 1.748 0.423
.imtcjob 2.808 0.162 17.369 0.000 2.808 0.637
.rlgueim 3.183 0.184 17.274 0.000 3.183 0.803
Universalism 0.358 0.043 8.394 0.000 1.000 1.000
TraditnCnfrmty 0.373 0.051 7.344 0.000 1.000 1.000
PerceivedThret 2.803 0.204 13.711 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.482 0.504
ipudrst 1.014 0.090 11.266 0.000 0.489 0.556
impenv 0.918 0.083 11.098 0.000 0.442 0.464
TraditionConformity =~
imptrad 1.000 0.653 0.476
ipfrule 1.228 0.088 13.883 0.000 0.802 0.572
ipbhprp 1.289 0.098 13.146 0.000 0.841 0.645
PerceivedThreat =~
imbgeco 1.000 1.857 0.801
imueclt 0.941 0.039 24.318 0.000 1.748 0.741
imtcjob 0.705 0.025 27.981 0.000 1.309 0.639
rlgueim 0.559 0.032 17.465 0.000 1.039 0.501
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.776 0.100 7.799 0.000 0.776 0.273
Universalism ~~
TraditnCnfrmty 0.065 0.013 5.175 0.000 0.208 0.208
PerceivedThret -0.373 0.038 -9.755 0.000 -0.416 -0.416
TraditionConformity ~~
PerceivedThret 0.283 0.043 6.578 0.000 0.233 0.233
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.683 0.040 17.006 0.000 0.683 0.746
.ipudrst 0.535 0.029 18.522 0.000 0.535 0.691
.impenv 0.712 0.031 22.721 0.000 0.712 0.784
.imptrad 1.456 0.054 26.745 0.000 1.456 0.774
.ipfrule 1.318 0.056 23.689 0.000 1.318 0.672
.ipbhprp 0.996 0.057 17.346 0.000 0.996 0.585
.imbgeco 1.931 0.143 13.512 0.000 1.931 0.359
.imueclt 2.510 0.144 17.435 0.000 2.510 0.451
.imtcjob 2.483 0.116 21.351 0.000 2.483 0.592
.rlgueim 3.217 0.116 27.792 0.000 3.217 0.749
Universalism 0.232 0.029 7.884 0.000 1.000 1.000
TraditnCnfrmty 0.426 0.047 9.043 0.000 1.000 1.000
PerceivedThret 3.448 0.187 18.413 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.594 0.563
ipudrst 1.109 0.098 11.275 0.000 0.659 0.625
impenv 0.744 0.091 8.146 0.000 0.443 0.409
TraditionConformity =~
imptrad 1.000 0.738 0.512
ipfrule 1.142 0.095 11.963 0.000 0.842 0.589
ipbhprp 1.114 0.090 12.407 0.000 0.822 0.639
PerceivedThreat =~
imbgeco 1.000 2.052 0.826
imueclt 1.057 0.038 28.075 0.000 2.169 0.808
imtcjob 0.733 0.029 25.020 0.000 1.504 0.655
rlgueim 0.631 0.036 17.776 0.000 1.295 0.567
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.798 0.154 5.171 0.000 0.798 0.268
Universalism ~~
TraditnCnfrmty 0.106 0.022 4.786 0.000 0.241 0.241
PerceivedThret -0.490 0.063 -7.796 0.000 -0.402 -0.402
TraditionConformity ~~
PerceivedThret 0.328 0.059 5.521 0.000 0.217 0.217
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.763 0.050 15.275 0.000 0.763 0.683
.ipudrst 0.679 0.047 14.457 0.000 0.679 0.610
.impenv 0.976 0.043 22.514 0.000 0.976 0.833
.imptrad 1.529 0.068 22.449 0.000 1.529 0.737
.ipfrule 1.335 0.074 18.073 0.000 1.335 0.653
.ipbhprp 0.980 0.065 14.984 0.000 0.980 0.592
.imbgeco 1.958 0.159 12.297 0.000 1.958 0.317
.imueclt 2.498 0.205 12.164 0.000 2.498 0.347
.imtcjob 3.008 0.156 19.338 0.000 3.008 0.571
.rlgueim 3.538 0.167 21.171 0.000 3.538 0.678
Universalism 0.353 0.047 7.566 0.000 1.000 1.000
TraditnCnfrmty 0.544 0.065 8.340 0.000 1.000 1.000
PerceivedThret 4.211 0.223 18.859 0.000 1.000 1.000
Fixed factor method
scfa_fit_config2 <- cfa(
model = "
Universalism =~ c(NA, NA, NA)*ipeqopt + ipudrst + impenv
Universalism ~~ c(1, 1, 1)*Universalism
TraditionConformity =~ c(NA, NA, NA)*imptrad + ipfrule + ipbhprp
TraditionConformity ~~ c(1, 1, 1)*TraditionConformity
PerceivedThreat =~ c(NA, NA, NA)*imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ c(1, 1, 1)*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_config2,
fit.measures = T,
standardized = T
)
lavaan 0.6-12 ended normally after 78 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 102
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 555.173 477.046
Degrees of freedom 93 93
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.164
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 82.379 70.786
DE 248.043 213.137
GB 224.751 193.123
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.960 0.958
Tucker-Lewis Index (TLI) 0.942 0.939
Robust Comparative Fit Index (CFI) 0.961
Robust Tucker-Lewis Index (TLI) 0.944
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101025.222 -101025.222
Scaling correction factor 1.218
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202254.443 202254.443
Bayesian (BIC) 202935.107 202935.107
Sample-size adjusted Bayesian (BIC) 202610.980 202610.980
Root Mean Square Error of Approximation:
RMSEA 0.051 0.046
90 Percent confidence interval - lower 0.046 0.042
90 Percent confidence interval - upper 0.055 0.050
P-value RMSEA <= 0.05 0.410 0.956
Robust RMSEA 0.050
90 Percent confidence interval - lower 0.045
90 Percent confidence interval - upper 0.054
Standardized Root Mean Square Residual:
SRMR 0.034 0.034
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.598 0.036 16.788 0.000 0.598 0.563
ipudrst 0.590 0.037 15.918 0.000 0.590 0.541
impenv 0.644 0.034 18.761 0.000 0.644 0.613
TraditionConformity =~
imptrad 0.610 0.042 14.687 0.000 0.610 0.478
ipfrule 0.649 0.038 17.268 0.000 0.649 0.581
ipbhprp 0.790 0.038 20.642 0.000 0.790 0.673
PerceivedThreat =~
imbgeco 1.674 0.061 27.423 0.000 1.674 0.803
imueclt 1.544 0.062 24.955 0.000 1.544 0.760
imtcjob 1.266 0.063 20.214 0.000 1.266 0.603
rlgueim 0.883 0.074 11.876 0.000 0.883 0.443
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.424 0.135 3.149 0.002 0.424 0.180
Universalism ~~
TraditnCnfrmty 0.833 0.039 21.543 0.000 0.833 0.833
PerceivedThret -0.061 0.040 -1.522 0.128 -0.061 -0.061
TraditionConformity ~~
PerceivedThret 0.058 0.041 1.407 0.159 0.058 0.058
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.274
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.897
.impenv 4.688 0.028 166.708 0.000 4.688 4.467
.imptrad 4.416 0.034 129.035 0.000 4.416 3.457
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.859
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.818
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.028
.imueclt 6.115 0.054 112.277 0.000 6.115 3.008
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.122
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.036
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.769 0.052 14.837 0.000 0.769 0.683
.ipudrst 0.842 0.046 18.413 0.000 0.842 0.708
.impenv 0.687 0.041 16.774 0.000 0.687 0.624
.imptrad 1.259 0.065 19.227 0.000 1.259 0.772
.ipfrule 0.826 0.052 15.934 0.000 0.826 0.662
.ipbhprp 0.751 0.059 12.817 0.000 0.751 0.546
.imbgeco 1.548 0.176 8.789 0.000 1.548 0.356
.imueclt 1.748 0.167 10.467 0.000 1.748 0.423
.imtcjob 2.808 0.162 17.369 0.000 2.808 0.637
.rlgueim 3.183 0.184 17.274 0.000 3.183 0.803
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.482 0.031 15.768 0.000 0.482 0.504
ipudrst 0.489 0.028 17.513 0.000 0.489 0.556
impenv 0.442 0.029 15.198 0.000 0.442 0.464
TraditionConformity =~
imptrad 0.653 0.036 18.086 0.000 0.653 0.476
ipfrule 0.802 0.035 22.658 0.000 0.802 0.572
ipbhprp 0.841 0.035 23.801 0.000 0.841 0.645
PerceivedThreat =~
imbgeco 1.857 0.050 36.827 0.000 1.857 0.801
imueclt 1.748 0.052 33.787 0.000 1.748 0.741
imtcjob 1.309 0.049 26.851 0.000 1.309 0.639
rlgueim 1.039 0.050 20.898 0.000 1.039 0.501
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.776 0.100 7.799 0.000 0.776 0.273
Universalism ~~
TraditnCnfrmty 0.208 0.038 5.419 0.000 0.208 0.208
PerceivedThret -0.416 0.033 -12.695 0.000 -0.416 -0.416
TraditionConformity ~~
PerceivedThret 0.233 0.031 7.572 0.000 0.233 0.233
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.357
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.639
.impenv 4.996 0.018 271.054 0.000 4.996 5.245
.imptrad 4.028 0.027 151.748 0.000 4.028 2.936
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.451
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.120
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.812
.imueclt 3.752 0.046 82.188 0.000 3.752 1.590
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.157
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.296
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.683 0.040 17.006 0.000 0.683 0.746
.ipudrst 0.535 0.029 18.522 0.000 0.535 0.691
.impenv 0.712 0.031 22.721 0.000 0.712 0.784
.imptrad 1.456 0.054 26.745 0.000 1.456 0.774
.ipfrule 1.318 0.056 23.689 0.000 1.318 0.672
.ipbhprp 0.996 0.057 17.346 0.000 0.996 0.585
.imbgeco 1.931 0.143 13.512 0.000 1.931 0.359
.imueclt 2.510 0.144 17.435 0.000 2.510 0.451
.imtcjob 2.483 0.116 21.351 0.000 2.483 0.592
.rlgueim 3.217 0.116 27.792 0.000 3.217 0.749
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 0.594 0.039 15.133 0.000 0.594 0.563
ipudrst 0.659 0.039 17.100 0.000 0.659 0.625
impenv 0.443 0.041 10.792 0.000 0.443 0.409
TraditionConformity =~
imptrad 0.738 0.044 16.680 0.000 0.738 0.512
ipfrule 0.842 0.044 19.068 0.000 0.842 0.589
ipbhprp 0.822 0.041 20.185 0.000 0.822 0.639
PerceivedThreat =~
imbgeco 2.052 0.054 37.718 0.000 2.052 0.826
imueclt 2.169 0.059 37.074 0.000 2.169 0.808
imtcjob 1.504 0.058 25.804 0.000 1.504 0.655
rlgueim 1.295 0.063 20.558 0.000 1.295 0.567
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.798 0.154 5.171 0.000 0.798 0.268
Universalism ~~
TraditnCnfrmty 0.241 0.050 4.856 0.000 0.241 0.241
PerceivedThret -0.402 0.036 -11.317 0.000 -0.402 -0.402
TraditionConformity ~~
PerceivedThret 0.217 0.036 6.049 0.000 0.217 0.217
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.727
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.469
.impenv 4.849 0.026 188.959 0.000 4.849 4.479
.imptrad 4.142 0.034 121.354 0.000 4.142 2.876
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.534
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.392
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.052
.imueclt 5.002 0.064 78.633 0.000 5.002 1.864
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.296
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.449
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.763 0.050 15.275 0.000 0.763 0.683
.ipudrst 0.679 0.047 14.457 0.000 0.679 0.610
.impenv 0.976 0.043 22.514 0.000 0.976 0.833
.imptrad 1.529 0.068 22.449 0.000 1.529 0.737
.ipfrule 1.335 0.074 18.073 0.000 1.335 0.653
.ipbhprp 0.980 0.065 14.985 0.000 0.980 0.592
.imbgeco 1.958 0.159 12.297 0.000 1.958 0.317
.imueclt 2.498 0.205 12.164 0.000 2.498 0.347
.imtcjob 3.008 0.156 19.338 0.000 3.008 0.571
.rlgueim 3.538 0.167 21.171 0.000 3.538 0.678
Reference indicator method
scfa_fit_metric <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = "loadings",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_metric,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 107 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 102
Number of equality constraints 14
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 592.976 506.441
Degrees of freedom 107 107
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.171
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 98.036 83.729
DE 250.736 214.145
GB 244.203 208.566
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.958 0.956
Tucker-Lewis Index (TLI) 0.947 0.945
Robust Comparative Fit Index (CFI) 0.959
Robust Tucker-Lewis Index (TLI) 0.949
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101044.123 -101044.123
Scaling correction factor 1.051
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202264.246 202264.246
Bayesian (BIC) 202851.485 202851.485
Sample-size adjusted Bayesian (BIC) 202571.846 202571.846
Root Mean Square Error of Approximation:
RMSEA 0.048 0.044
90 Percent confidence interval - lower 0.045 0.040
90 Percent confidence interval - upper 0.052 0.047
P-value RMSEA <= 0.05 0.765 0.998
Robust RMSEA 0.047
90 Percent confidence interval - lower 0.043
90 Percent confidence interval - upper 0.052
Standardized Root Mean Square Residual:
SRMR 0.036 0.036
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.617 0.578
ipudrst (.p2.) 1.035 0.051 20.374 0.000 0.638 0.576
impenv (.p3.) 0.929 0.050 18.493 0.000 0.573 0.558
TraditionConformity =~
imptrad 1.000 0.604 0.473
ipfrule (.p5.) 1.145 0.053 21.580 0.000 0.692 0.611
ipbhprp (.p6.) 1.244 0.059 21.101 0.000 0.751 0.648
PerceivedThreat =~
imbgeco 1.000 1.638 0.787
imueclt (.p8.) 0.981 0.025 39.769 0.000 1.607 0.783
imtcjob (.p9.) 0.725 0.017 41.593 0.000 1.187 0.574
rlgueim (.10.) 0.580 0.022 26.426 0.000 0.950 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.340 0.115 2.959 0.003 0.340 0.151
Universalism ~~
TraditnCnfrmty 0.312 0.022 14.132 0.000 0.837 0.837
PerceivedThret -0.066 0.040 -1.620 0.105 -0.065 -0.065
TraditionConformity ~~
PerceivedThret 0.063 0.041 1.528 0.126 0.063 0.063
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.250
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.838
.impenv 4.688 0.028 166.708 0.000 4.688 4.561
.imptrad 4.416 0.034 129.035 0.000 4.416 3.459
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.810
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.861
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.036
.imueclt 6.115 0.054 112.277 0.000 6.115 2.980
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.171
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.010
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.759 0.049 15.407 0.000 0.759 0.666
.ipudrst 0.820 0.043 18.876 0.000 0.820 0.668
.impenv 0.728 0.040 18.418 0.000 0.728 0.689
.imptrad 1.264 0.061 20.747 0.000 1.264 0.776
.ipfrule 0.802 0.048 16.654 0.000 0.802 0.626
.ipbhprp 0.781 0.053 14.667 0.000 0.781 0.580
.imbgeco 1.647 0.137 11.982 0.000 1.647 0.380
.imueclt 1.628 0.137 11.923 0.000 1.628 0.387
.imtcjob 2.867 0.147 19.443 0.000 2.867 0.671
.rlgueim 3.126 0.169 18.499 0.000 3.126 0.776
Universalism 0.381 0.035 11.029 0.000 1.000 1.000
TraditnCnfrmty 0.365 0.035 10.558 0.000 1.000 1.000
PerceivedThret 2.682 0.150 17.868 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.476 0.498
ipudrst (.p2.) 1.035 0.051 20.374 0.000 0.493 0.560
impenv (.p3.) 0.929 0.050 18.493 0.000 0.443 0.465
TraditionConformity =~
imptrad 1.000 0.678 0.492
ipfrule (.p5.) 1.145 0.053 21.580 0.000 0.776 0.556
ipbhprp (.p6.) 1.244 0.059 21.101 0.000 0.843 0.646
PerceivedThreat =~
imbgeco 1.000 1.817 0.788
imueclt (.p8.) 0.981 0.025 39.769 0.000 1.783 0.752
imtcjob (.p9.) 0.725 0.017 41.593 0.000 1.317 0.641
rlgueim (.10.) 0.580 0.022 26.426 0.000 1.054 0.508
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.734 0.090 8.164 0.000 0.734 0.263
Universalism ~~
TraditnCnfrmty 0.068 0.013 5.412 0.000 0.210 0.210
PerceivedThret -0.365 0.033 -11.200 0.000 -0.421 -0.421
TraditionConformity ~~
PerceivedThret 0.293 0.040 7.395 0.000 0.238 0.238
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.362
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.635
.impenv 4.996 0.018 271.054 0.000 4.996 5.244
.imptrad 4.028 0.027 151.748 0.000 4.028 2.924
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.461
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.119
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.823
.imueclt 3.752 0.046 82.188 0.000 3.752 1.583
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.151
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.294
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.687 0.038 18.183 0.000 0.687 0.752
.ipudrst 0.532 0.027 19.544 0.000 0.532 0.686
.impenv 0.712 0.030 24.129 0.000 0.712 0.784
.imptrad 1.438 0.048 29.723 0.000 1.438 0.758
.ipfrule 1.343 0.046 29.310 0.000 1.343 0.691
.ipbhprp 0.994 0.047 21.134 0.000 0.994 0.583
.imbgeco 2.014 0.120 16.768 0.000 2.014 0.379
.imueclt 2.442 0.122 20.065 0.000 2.442 0.435
.imtcjob 2.485 0.110 22.552 0.000 2.485 0.589
.rlgueim 3.190 0.111 28.856 0.000 3.190 0.742
Universalism 0.227 0.021 10.774 0.000 1.000 1.000
TraditnCnfrmty 0.459 0.035 13.238 0.000 1.000 1.000
PerceivedThret 3.302 0.155 21.330 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.576 0.547
ipudrst (.p2.) 1.035 0.051 20.374 0.000 0.596 0.572
impenv (.p3.) 0.929 0.050 18.493 0.000 0.535 0.485
TraditionConformity =~
imptrad 1.000 0.703 0.491
ipfrule (.p5.) 1.145 0.053 21.580 0.000 0.805 0.565
ipbhprp (.p6.) 1.244 0.059 21.101 0.000 0.874 0.674
PerceivedThreat =~
imbgeco 1.000 2.115 0.845
imueclt (.p8.) 0.981 0.025 39.769 0.000 2.075 0.784
imtcjob (.p9.) 0.725 0.017 41.593 0.000 1.533 0.663
rlgueim (.10.) 0.580 0.022 26.426 0.000 1.227 0.542
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.929 0.137 6.794 0.000 0.929 0.297
Universalism ~~
TraditnCnfrmty 0.107 0.019 5.503 0.000 0.265 0.265
PerceivedThret -0.480 0.051 -9.426 0.000 -0.394 -0.394
TraditionConformity ~~
PerceivedThret 0.310 0.055 5.632 0.000 0.209 0.209
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.742
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.526
.impenv 4.849 0.026 188.959 0.000 4.849 4.396
.imptrad 4.142 0.034 121.354 0.000 4.142 2.893
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.545
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.366
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.035
.imueclt 5.002 0.064 78.633 0.000 5.002 1.890
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.281
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.469
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.778 0.044 17.492 0.000 0.778 0.701
.ipudrst 0.731 0.040 18.078 0.000 0.731 0.673
.impenv 0.930 0.041 22.745 0.000 0.930 0.765
.imptrad 1.556 0.057 27.244 0.000 1.556 0.759
.ipfrule 1.379 0.057 24.316 0.000 1.379 0.680
.ipbhprp 0.917 0.055 16.687 0.000 0.917 0.545
.imbgeco 1.799 0.137 13.116 0.000 1.799 0.287
.imueclt 2.698 0.177 15.278 0.000 2.698 0.385
.imtcjob 2.988 0.145 20.555 0.000 2.988 0.560
.rlgueim 3.624 0.155 23.337 0.000 3.624 0.706
Universalism 0.331 0.033 9.923 0.000 1.000 1.000
TraditnCnfrmty 0.494 0.043 11.565 0.000 1.000 1.000
PerceivedThret 4.473 0.192 23.306 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance of the latent factor for model identification have to be fixed at 1. In the other groups, factor variance is freely estimated.
scfa_fit_metric2 <- cfa(
model = "
Universalism =~ c(NA,NA,NA)*ipeqopt + c(a,a,a)*ipeqopt + c(b,b,b)*ipudrst + c(c,c,c)*impenv
Universalism ~~ c(1,NA,NA)*Universalism
TraditionConformity =~ c(NA,NA,NA)*imptrad + c(d,d,d)*imptrad + c(e,e,e)*ipfrule + c(f,f,f)*ipbhprp
TraditionConformity ~~ c(1,NA,NA)*TraditionConformity
PerceivedThreat =~ c(NA,NA,NA)*imbgeco + c(g,g,g)*imbgeco + c(h,h,h)*imueclt + c(i,i,i)*imtcjob + c(j,j,j)*rlgueim
imueclt ~~ rlgueim
PerceivedThreat ~~ c(1, NA, NA)*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_metric2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 88 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 108
Number of equality constraints 20
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 592.976 506.441
Degrees of freedom 107 107
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.171
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 98.036 83.729
DE 250.736 214.145
GB 244.203 208.566
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.958 0.956
Tucker-Lewis Index (TLI) 0.947 0.945
Robust Comparative Fit Index (CFI) 0.959
Robust Tucker-Lewis Index (TLI) 0.949
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101044.123 -101044.123
Scaling correction factor 0.992
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202264.246 202264.246
Bayesian (BIC) 202851.485 202851.485
Sample-size adjusted Bayesian (BIC) 202571.846 202571.846
Root Mean Square Error of Approximation:
RMSEA 0.048 0.044
90 Percent confidence interval - lower 0.045 0.040
90 Percent confidence interval - upper 0.052 0.047
P-value RMSEA <= 0.05 0.765 0.998
Robust RMSEA 0.047
90 Percent confidence interval - lower 0.043
90 Percent confidence interval - upper 0.052
Standardized Root Mean Square Residual:
SRMR 0.036 0.036
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.617 0.028 22.058 0.000 0.617 0.578
ipudrst (b) 0.638 0.027 23.561 0.000 0.638 0.576
impenv (c) 0.573 0.029 19.497 0.000 0.573 0.558
TraditionConformity =~
imptrad (d) 0.604 0.029 21.115 0.000 0.604 0.473
ipfrule (e) 0.692 0.028 24.890 0.000 0.692 0.611
ipbhprp (f) 0.751 0.031 23.911 0.000 0.751 0.648
PerceivedThreat =~
imbgeco (g) 1.638 0.046 35.736 0.000 1.638 0.787
imueclt (h) 1.607 0.044 36.319 0.000 1.607 0.783
imtcjob (i) 1.187 0.039 30.213 0.000 1.187 0.574
rlgueim (j) 0.950 0.037 25.987 0.000 0.950 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.340 0.115 2.959 0.003 0.340 0.151
Universalism ~~
TraditnCnfrmty 0.837 0.039 21.461 0.000 0.837 0.837
PerceivedThret -0.065 0.040 -1.631 0.103 -0.065 -0.065
TraditionConformity ~~
PerceivedThret 0.063 0.041 1.538 0.124 0.063 0.063
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.538 0.028 159.514 0.000 4.538 4.250
.ipudrst 4.252 0.029 145.438 0.000 4.252 3.838
.impenv 4.688 0.028 166.708 0.000 4.688 4.561
.imptrad 4.416 0.034 129.035 0.000 4.416 3.459
.ipfrule 4.311 0.030 144.025 0.000 4.311 3.810
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.861
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.036
.imueclt 6.115 0.054 112.277 0.000 6.115 2.980
.imtcjob 6.556 0.056 116.518 0.000 6.556 3.171
.rlgueim 6.042 0.053 113.304 0.000 6.042 3.010
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.759 0.049 15.407 0.000 0.759 0.666
.ipudrst 0.820 0.043 18.876 0.000 0.820 0.668
.impenv 0.728 0.040 18.418 0.000 0.728 0.689
.imptrad 1.264 0.061 20.747 0.000 1.264 0.776
.ipfrule 0.802 0.048 16.654 0.000 0.802 0.626
.ipbhprp 0.781 0.053 14.667 0.000 0.781 0.580
.imbgeco 1.647 0.137 11.982 0.000 1.647 0.380
.imueclt 1.628 0.137 11.923 0.000 1.628 0.387
.imtcjob 2.867 0.147 19.443 0.000 2.867 0.671
.rlgueim 3.126 0.169 18.499 0.000 3.126 0.776
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.617 0.028 22.058 0.000 0.476 0.498
ipudrst (b) 0.638 0.027 23.561 0.000 0.493 0.560
impenv (c) 0.573 0.029 19.497 0.000 0.443 0.465
TraditionConformity =~
imptrad (d) 0.604 0.029 21.115 0.000 0.678 0.492
ipfrule (e) 0.692 0.028 24.890 0.000 0.776 0.556
ipbhprp (f) 0.751 0.031 23.911 0.000 0.843 0.646
PerceivedThreat =~
imbgeco (g) 1.638 0.046 35.736 0.000 1.817 0.788
imueclt (h) 1.607 0.044 36.319 0.000 1.783 0.752
imtcjob (i) 1.187 0.039 30.213 0.000 1.317 0.641
rlgueim (j) 0.950 0.037 25.987 0.000 1.054 0.508
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.734 0.090 8.164 0.000 0.734 0.263
Universalism ~~
TraditnCnfrmty 0.182 0.035 5.244 0.000 0.210 0.210
PerceivedThret -0.361 0.034 -10.605 0.000 -0.421 -0.421
TraditionConformity ~~
PerceivedThret 0.297 0.040 7.373 0.000 0.238 0.238
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 5.126 0.019 276.841 0.000 5.126 5.362
.ipudrst 4.961 0.017 291.447 0.000 4.961 5.635
.impenv 4.996 0.018 271.054 0.000 4.996 5.244
.imptrad 4.028 0.027 151.748 0.000 4.028 2.924
.ipfrule 3.433 0.027 126.693 0.000 3.433 2.461
.ipbhprp 4.072 0.025 161.233 0.000 4.072 3.119
.imbgeco 4.203 0.045 93.648 0.000 4.203 1.823
.imueclt 3.752 0.046 82.188 0.000 3.752 1.583
.imtcjob 4.417 0.040 111.454 0.000 4.417 2.151
.rlgueim 4.758 0.040 118.646 0.000 4.758 2.294
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.596 0.059 10.089 0.000 1.000 1.000
TraditnCnfrmty 1.258 0.105 11.983 0.000 1.000 1.000
PerceivedThret 1.231 0.076 16.111 0.000 1.000 1.000
.ipeqopt 0.687 0.038 18.183 0.000 0.687 0.752
.ipudrst 0.532 0.027 19.544 0.000 0.532 0.686
.impenv 0.712 0.030 24.129 0.000 0.712 0.784
.imptrad 1.438 0.048 29.723 0.000 1.438 0.758
.ipfrule 1.343 0.046 29.310 0.000 1.343 0.691
.ipbhprp 0.994 0.047 21.134 0.000 0.994 0.583
.imbgeco 2.014 0.120 16.768 0.000 2.014 0.379
.imueclt 2.442 0.122 20.065 0.000 2.442 0.435
.imtcjob 2.485 0.110 22.552 0.000 2.485 0.589
.rlgueim 3.190 0.111 28.856 0.000 3.190 0.742
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.617 0.028 22.058 0.000 0.576 0.547
ipudrst (b) 0.638 0.027 23.561 0.000 0.596 0.572
impenv (c) 0.573 0.029 19.497 0.000 0.535 0.485
TraditionConformity =~
imptrad (d) 0.604 0.029 21.115 0.000 0.703 0.491
ipfrule (e) 0.692 0.028 24.890 0.000 0.805 0.565
ipbhprp (f) 0.751 0.031 23.911 0.000 0.874 0.674
PerceivedThreat =~
imbgeco (g) 1.638 0.046 35.736 0.000 2.115 0.845
imueclt (h) 1.607 0.044 36.319 0.000 2.075 0.784
imtcjob (i) 1.187 0.039 30.213 0.000 1.533 0.663
rlgueim (j) 0.950 0.037 25.987 0.000 1.227 0.542
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.929 0.137 6.794 0.000 0.929 0.297
Universalism ~~
TraditnCnfrmty 0.288 0.054 5.333 0.000 0.265 0.265
PerceivedThret -0.475 0.051 -9.359 0.000 -0.394 -0.394
TraditionConformity ~~
PerceivedThret 0.314 0.056 5.599 0.000 0.209 0.209
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 4.994 0.025 199.417 0.000 4.994 4.742
.ipudrst 4.716 0.025 188.538 0.000 4.716 4.526
.impenv 4.849 0.026 188.959 0.000 4.849 4.396
.imptrad 4.142 0.034 121.354 0.000 4.142 2.893
.ipfrule 3.624 0.034 106.911 0.000 3.624 2.545
.ipbhprp 4.365 0.030 143.127 0.000 4.365 3.366
.imbgeco 5.097 0.059 86.586 0.000 5.097 2.035
.imueclt 5.002 0.064 78.633 0.000 5.002 1.890
.imtcjob 5.271 0.054 96.863 0.000 5.271 2.281
.rlgueim 5.592 0.054 103.308 0.000 5.592 2.469
Universalism 0.000 0.000 0.000
TraditnCnfrmty 0.000 0.000 0.000
PerceivedThret 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.870 0.094 9.227 0.000 1.000 1.000
TraditnCnfrmty 1.354 0.120 11.288 0.000 1.000 1.000
PerceivedThret 1.668 0.105 15.882 0.000 1.000 1.000
.ipeqopt 0.778 0.044 17.492 0.000 0.778 0.701
.ipudrst 0.731 0.040 18.078 0.000 0.731 0.673
.impenv 0.930 0.041 22.745 0.000 0.930 0.765
.imptrad 1.556 0.057 27.243 0.000 1.556 0.759
.ipfrule 1.379 0.057 24.316 0.000 1.379 0.680
.ipbhprp 0.917 0.055 16.687 0.000 0.917 0.545
.imbgeco 1.799 0.137 13.116 0.000 1.799 0.287
.imueclt 2.698 0.177 15.278 0.000 2.698 0.385
.imtcjob 2.988 0.145 20.555 0.000 2.988 0.560
.rlgueim 3.624 0.155 23.337 0.000 3.624 0.706
Reference indicator method
scfa_fit_scalar <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_scalar,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 110 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 108
Number of equality constraints 34
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 927.208 803.868
Degrees of freedom 121 121
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.153
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 301.346 261.260
DE 318.130 275.812
GB 307.732 266.796
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.930 0.925
Tucker-Lewis Index (TLI) 0.922 0.916
Robust Comparative Fit Index (CFI) 0.931
Robust Tucker-Lewis Index (TLI) 0.924
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101211.239 -101211.239
Scaling correction factor 0.860
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202570.478 202570.478
Bayesian (BIC) 203064.293 203064.293
Sample-size adjusted Bayesian (BIC) 202829.142 202829.142
Root Mean Square Error of Approximation:
RMSEA 0.058 0.054
90 Percent confidence interval - lower 0.055 0.051
90 Percent confidence interval - upper 0.062 0.057
P-value RMSEA <= 0.05 0.000 0.027
Robust RMSEA 0.058
90 Percent confidence interval - lower 0.054
90 Percent confidence interval - upper 0.062
Standardized Root Mean Square Residual:
SRMR 0.044 0.044
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.620 0.580
ipudrst (.p2.) 1.084 0.045 24.060 0.000 0.672 0.598
impenv (.p3.) 0.809 0.037 21.736 0.000 0.501 0.493
TraditionConformity =~
imptrad 1.000 0.565 0.446
ipfrule (.p5.) 1.328 0.060 22.072 0.000 0.750 0.643
ipbhprp (.p6.) 1.179 0.048 24.780 0.000 0.666 0.580
PerceivedThreat =~
imbgeco 1.000 1.579 0.766
imueclt (.p8.) 1.029 0.018 57.376 0.000 1.625 0.791
imtcjob (.p9.) 0.796 0.016 51.029 0.000 1.257 0.594
rlgueim (.10.) 0.601 0.018 33.753 0.000 0.949 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.312 0.112 2.777 0.005 0.312 0.141
Universalism ~~
TraditnCnfrmty 0.297 0.022 13.651 0.000 0.847 0.847
PerceivedThret -0.070 0.040 -1.775 0.076 -0.072 -0.072
TraditionConformity ~~
PerceivedThret 0.060 0.038 1.578 0.114 0.067 0.067
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.237 0.000 4.566 4.274
.ipudrst (.29.) 4.313 0.028 154.460 0.000 4.313 3.840
.impenv (.30.) 4.573 0.023 195.736 0.000 4.573 4.493
.imptrad (.31.) 4.479 0.026 169.894 0.000 4.479 3.531
.ipfrule (.32.) 4.154 0.035 119.504 0.000 4.154 3.560
.ipbhprp (.33.) 4.634 0.025 185.843 0.000 4.634 4.033
.imbgeco (.34.) 6.385 0.052 123.358 0.000 6.385 3.098
.imueclt (.35.) 6.139 0.052 117.875 0.000 6.139 2.990
.imtcjob (.36.) 6.305 0.051 124.764 0.000 6.305 2.978
.rlgueim (.37.) 6.158 0.042 146.904 0.000 6.158 3.070
Unvrsls 0.000 0.000 0.000
TrdtnCn 0.000 0.000 0.000
PrcvdTh 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.757 0.049 15.528 0.000 0.757 0.663
.ipudrst 0.810 0.045 18.016 0.000 0.810 0.642
.impenv 0.784 0.038 20.864 0.000 0.784 0.757
.imptrad 1.289 0.063 20.624 0.000 1.289 0.802
.ipfrule 0.799 0.055 14.447 0.000 0.799 0.587
.ipbhprp 0.876 0.057 15.511 0.000 0.876 0.664
.imbgeco 1.752 0.130 13.528 0.000 1.752 0.413
.imueclt 1.574 0.136 11.586 0.000 1.574 0.374
.imtcjob 2.901 0.154 18.785 0.000 2.901 0.647
.rlgueim 3.122 0.170 18.379 0.000 3.122 0.776
Universalism 0.384 0.033 11.667 0.000 1.000 1.000
TraditnCnfrmty 0.319 0.032 10.071 0.000 1.000 1.000
PerceivedThret 2.495 0.133 18.809 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.482 0.503
ipudrst (.p2.) 1.084 0.045 24.060 0.000 0.522 0.589
impenv (.p3.) 0.809 0.037 21.736 0.000 0.390 0.412
TraditionConformity =~
imptrad 1.000 0.654 0.477
ipfrule (.p5.) 1.328 0.060 22.072 0.000 0.869 0.614
ipbhprp (.p6.) 1.179 0.048 24.780 0.000 0.772 0.597
PerceivedThreat =~
imbgeco 1.000 1.744 0.765
imueclt (.p8.) 1.029 0.018 57.376 0.000 1.794 0.756
imtcjob (.p9.) 0.796 0.016 51.029 0.000 1.388 0.664
rlgueim (.10.) 0.601 0.018 33.753 0.000 1.048 0.507
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.711 0.088 8.093 0.000 0.711 0.257
Universalism ~~
TraditnCnfrmty 0.061 0.012 5.011 0.000 0.195 0.195
PerceivedThret -0.361 0.031 -11.628 0.000 -0.430 -0.430
TraditionConformity ~~
PerceivedThret 0.275 0.037 7.482 0.000 0.241 0.241
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.237 0.000 4.566 4.768
.ipudrst (.29.) 4.313 0.028 154.460 0.000 4.313 4.868
.impenv (.30.) 4.573 0.023 195.736 0.000 4.573 4.840
.imptrad (.31.) 4.479 0.026 169.894 0.000 4.479 3.262
.ipfrule (.32.) 4.154 0.035 119.504 0.000 4.154 2.936
.ipbhprp (.33.) 4.634 0.025 185.843 0.000 4.634 3.585
.imbgeco (.34.) 6.385 0.052 123.358 0.000 6.385 2.802
.imueclt (.35.) 6.139 0.052 117.875 0.000 6.139 2.587
.imtcjob (.36.) 6.305 0.051 124.764 0.000 6.305 3.014
.rlgueim (.37.) 6.158 0.042 146.904 0.000 6.158 2.979
Unvrsls 0.571 0.029 19.663 0.000 1.186 1.186
TrdtnCn -0.500 0.030 -16.883 0.000 -0.763 -0.763
PrcvdTh -2.278 0.063 -35.974 0.000 -1.306 -1.306
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.685 0.038 17.814 0.000 0.685 0.747
.ipudrst 0.512 0.028 18.145 0.000 0.512 0.652
.impenv 0.741 0.030 24.619 0.000 0.741 0.830
.imptrad 1.457 0.046 31.830 0.000 1.457 0.773
.ipfrule 1.247 0.050 25.056 0.000 1.247 0.623
.ipbhprp 1.076 0.043 25.236 0.000 1.076 0.644
.imbgeco 2.151 0.111 19.311 0.000 2.151 0.414
.imueclt 2.411 0.118 20.456 0.000 2.411 0.428
.imtcjob 2.448 0.112 21.899 0.000 2.448 0.560
.rlgueim 3.174 0.110 28.941 0.000 3.174 0.743
Universalism 0.232 0.020 11.688 0.000 1.000 1.000
TraditnCnfrmty 0.428 0.032 13.521 0.000 1.000 1.000
PerceivedThret 3.042 0.136 22.406 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.589 0.558
ipudrst (.p2.) 1.084 0.045 24.060 0.000 0.639 0.608
impenv (.p3.) 0.809 0.037 21.736 0.000 0.476 0.437
TraditionConformity =~
imptrad 1.000 0.678 0.476
ipfrule (.p5.) 1.328 0.060 22.072 0.000 0.900 0.622
ipbhprp (.p6.) 1.179 0.048 24.780 0.000 0.800 0.620
PerceivedThreat =~
imbgeco 1.000 2.041 0.826
imueclt (.p8.) 1.029 0.018 57.376 0.000 2.100 0.790
imtcjob (.p9.) 0.796 0.016 51.029 0.000 1.624 0.688
rlgueim (.10.) 0.601 0.018 33.753 0.000 1.227 0.541
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.914 0.131 6.964 0.000 0.914 0.295
Universalism ~~
TraditnCnfrmty 0.098 0.019 5.134 0.000 0.245 0.245
PerceivedThret -0.481 0.048 -10.025 0.000 -0.400 -0.400
TraditionConformity ~~
PerceivedThret 0.300 0.051 5.840 0.000 0.216 0.216
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.237 0.000 4.566 4.323
.ipudrst (.29.) 4.313 0.028 154.460 0.000 4.313 4.105
.impenv (.30.) 4.573 0.023 195.736 0.000 4.573 4.192
.imptrad (.31.) 4.479 0.026 169.894 0.000 4.479 3.143
.ipfrule (.32.) 4.154 0.035 119.504 0.000 4.154 2.869
.ipbhprp (.33.) 4.634 0.025 185.843 0.000 4.634 3.595
.imbgeco (.34.) 6.385 0.052 123.358 0.000 6.385 2.582
.imueclt (.35.) 6.139 0.052 117.875 0.000 6.139 2.311
.imtcjob (.36.) 6.305 0.051 124.764 0.000 6.305 2.672
.rlgueim (.37.) 6.158 0.042 146.904 0.000 6.158 2.717
Unvrsls 0.386 0.031 12.426 0.000 0.655 0.655
TrdtnCn -0.319 0.032 -9.837 0.000 -0.470 -0.470
PrcvdTh -1.217 0.074 -16.522 0.000 -0.596 -0.596
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.768 0.043 17.956 0.000 0.768 0.689
.ipudrst 0.696 0.040 17.356 0.000 0.696 0.631
.impenv 0.963 0.041 23.757 0.000 0.963 0.809
.imptrad 1.571 0.056 27.982 0.000 1.571 0.774
.ipfrule 1.286 0.063 20.470 0.000 1.286 0.613
.ipbhprp 1.022 0.052 19.637 0.000 1.022 0.615
.imbgeco 1.947 0.128 15.200 0.000 1.947 0.318
.imueclt 2.650 0.166 15.936 0.000 2.650 0.375
.imtcjob 2.930 0.147 19.866 0.000 2.930 0.526
.rlgueim 3.632 0.151 24.065 0.000 3.632 0.707
Universalism 0.347 0.032 11.013 0.000 1.000 1.000
TraditnCnfrmty 0.460 0.039 11.850 0.000 1.000 1.000
PerceivedThret 4.166 0.178 23.464 0.000 1.000 1.000
Fixed factor method
Note! Only in one group does the variance and the intercept of the latent factor for model identification have to be fixed at 1 and 0, respectively. In the other groups, factor variance and intercept is freely estimated.
scfa_fit_scalar2 <- cfa(
model = "
Universalism =~ c(NA,NA,NA)*ipeqopt + c(a,a,a)*ipeqopt + c(b,b,b)*ipudrst + c(c,c,c)*impenv
ipeqopt ~ c(k,k,k)*1
ipudrst ~ c(l,l,l)*1
impenv ~ c(m,m,m)*1
Universalism ~ c(0,NA,NA)*1
Universalism ~~ c(1,NA,NA)*Universalism
TraditionConformity =~ c(NA,NA,NA)*imptrad + c(d,d,d)*imptrad + c(e,e,e)*ipfrule + c(f,f,f)*ipbhprp
imptrad ~ c(o,o,o)*1
ipfrule ~ c(p,p,p)*1
ipbhprp ~ c(q,q,q)*1
TraditionConformity ~ c(0,NA,NA)*1
TraditionConformity ~~ c(1,NA,NA)*TraditionConformity
PerceivedThreat =~ c(NA,NA,NA)*imbgeco + c(g,g,g)*imbgeco + c(h,h,h)*imueclt + c(i,i,i)*imtcjob + c(j,j,j)*rlgueim
imueclt ~~ rlgueim
imbgeco ~ c(r,r,r)*1
imueclt ~ c(s,s,s)*1
imtcjob ~ c(t,t,t)*1
rlgueim ~ c(u,u,u)*1
PerceivedThreat ~ c(0,NA,NA)*1
PerceivedThreat ~~ c(1,NA,NA)*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_scalar2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 115 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 114
Number of equality constraints 40
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 927.208 803.868
Degrees of freedom 121 121
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.153
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 301.347 261.261
DE 318.130 275.811
GB 307.731 266.795
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.930 0.925
Tucker-Lewis Index (TLI) 0.922 0.916
Robust Comparative Fit Index (CFI) 0.931
Robust Tucker-Lewis Index (TLI) 0.924
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101211.239 -101211.239
Scaling correction factor 0.815
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202570.478 202570.478
Bayesian (BIC) 203064.293 203064.293
Sample-size adjusted Bayesian (BIC) 202829.142 202829.142
Root Mean Square Error of Approximation:
RMSEA 0.058 0.054
90 Percent confidence interval - lower 0.055 0.051
90 Percent confidence interval - upper 0.062 0.057
P-value RMSEA <= 0.05 0.000 0.027
Robust RMSEA 0.058
90 Percent confidence interval - lower 0.054
90 Percent confidence interval - upper 0.062
Standardized Root Mean Square Residual:
SRMR 0.044 0.044
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.620 0.027 23.335 0.000 0.620 0.580
ipudrst (b) 0.672 0.027 25.143 0.000 0.672 0.598
impenv (c) 0.501 0.026 19.088 0.000 0.501 0.493
TraditionConformity =~
imptrad (d) 0.565 0.028 20.141 0.000 0.565 0.446
ipfrule (e) 0.750 0.029 26.121 0.000 0.750 0.643
ipbhprp (f) 0.666 0.031 21.822 0.000 0.666 0.580
PerceivedThreat =~
imbgeco (g) 1.579 0.042 37.617 0.000 1.579 0.766
imueclt (h) 1.625 0.043 37.727 0.000 1.625 0.791
imtcjob (i) 1.257 0.038 33.207 0.000 1.257 0.594
rlgueim (j) 0.949 0.033 28.420 0.000 0.949 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.312 0.112 2.777 0.005 0.312 0.141
Universalism ~~
TraditnCnfrmty 0.847 0.042 20.240 0.000 0.847 0.847
PerceivedThret -0.072 0.040 -1.785 0.074 -0.072 -0.072
TraditionConformity ~~
PerceivedThret 0.067 0.042 1.591 0.112 0.067 0.067
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.237 0.000 4.566 4.274
.ipudrst (l) 4.313 0.028 154.460 0.000 4.313 3.840
.impenv (m) 4.573 0.023 195.735 0.000 4.573 4.493
Universlsm 0.000 0.000 0.000
.imptrad (o) 4.479 0.026 169.893 0.000 4.479 3.531
.ipfrule (p) 4.154 0.035 119.503 0.000 4.154 3.560
.ipbhprp (q) 4.634 0.025 185.843 0.000 4.634 4.033
TrdtnCnfrm 0.000 0.000 0.000
.imbgeco (r) 6.385 0.052 123.358 0.000 6.385 3.098
.imueclt (s) 6.139 0.052 117.875 0.000 6.139 2.990
.imtcjob (t) 6.305 0.051 124.764 0.000 6.305 2.978
.rlgueim (u) 6.158 0.042 146.904 0.000 6.158 3.070
PercvdThrt 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.757 0.049 15.528 0.000 0.757 0.663
.ipudrst 0.810 0.045 18.016 0.000 0.810 0.642
.impenv 0.784 0.038 20.864 0.000 0.784 0.757
.imptrad 1.289 0.063 20.624 0.000 1.289 0.802
.ipfrule 0.799 0.055 14.447 0.000 0.799 0.587
.ipbhprp 0.876 0.057 15.511 0.000 0.876 0.664
.imbgeco 1.752 0.130 13.528 0.000 1.752 0.413
.imueclt 1.574 0.136 11.585 0.000 1.574 0.374
.imtcjob 2.901 0.154 18.785 0.000 2.901 0.647
.rlgueim 3.122 0.170 18.379 0.000 3.122 0.776
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.620 0.027 23.335 0.000 0.482 0.503
ipudrst (b) 0.672 0.027 25.143 0.000 0.522 0.589
impenv (c) 0.501 0.026 19.088 0.000 0.390 0.412
TraditionConformity =~
imptrad (d) 0.565 0.028 20.141 0.000 0.654 0.477
ipfrule (e) 0.750 0.029 26.121 0.000 0.869 0.614
ipbhprp (f) 0.666 0.031 21.822 0.000 0.772 0.597
PerceivedThreat =~
imbgeco (g) 1.579 0.042 37.617 0.000 1.744 0.765
imueclt (h) 1.625 0.043 37.727 0.000 1.794 0.756
imtcjob (i) 1.257 0.038 33.207 0.000 1.388 0.664
rlgueim (j) 0.949 0.033 28.420 0.000 1.048 0.507
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.711 0.088 8.093 0.000 0.711 0.257
Universalism ~~
TraditnCnfrmty 0.175 0.036 4.906 0.000 0.195 0.195
PerceivedThret -0.369 0.034 -10.817 0.000 -0.430 -0.430
TraditionConformity ~~
PerceivedThret 0.308 0.042 7.418 0.000 0.241 0.241
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.237 0.000 4.566 4.768
.ipudrst (l) 4.313 0.028 154.460 0.000 4.313 4.868
.impenv (m) 4.573 0.023 195.735 0.000 4.573 4.840
Universlsm 0.922 0.050 18.357 0.000 1.186 1.186
.imptrad (o) 4.479 0.026 169.893 0.000 4.479 3.262
.ipfrule (p) 4.154 0.035 119.503 0.000 4.154 2.936
.ipbhprp (q) 4.634 0.025 185.843 0.000 4.634 3.585
TrdtnCnfrm -0.884 0.063 -13.940 0.000 -0.763 -0.763
.imbgeco (r) 6.385 0.052 123.358 0.000 6.385 2.802
.imueclt (s) 6.139 0.052 117.875 0.000 6.139 2.587
.imtcjob (t) 6.305 0.051 124.764 0.000 6.305 3.014
.rlgueim (u) 6.158 0.042 146.904 0.000 6.158 2.979
PercvdThrt -1.442 0.051 -28.540 0.000 -1.306 -1.306
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.604 0.060 9.993 0.000 1.000 1.000
TraditnCnfrmty 1.342 0.116 11.546 0.000 1.000 1.000
PerceivedThret 1.219 0.077 15.920 0.000 1.000 1.000
.ipeqopt 0.685 0.038 17.814 0.000 0.685 0.747
.ipudrst 0.512 0.028 18.145 0.000 0.512 0.652
.impenv 0.741 0.030 24.619 0.000 0.741 0.830
.imptrad 1.457 0.046 31.830 0.000 1.457 0.773
.ipfrule 1.247 0.050 25.057 0.000 1.247 0.623
.ipbhprp 1.076 0.043 25.235 0.000 1.076 0.644
.imbgeco 2.151 0.111 19.311 0.000 2.151 0.414
.imueclt 2.411 0.118 20.456 0.000 2.411 0.428
.imtcjob 2.448 0.112 21.899 0.000 2.448 0.560
.rlgueim 3.174 0.110 28.941 0.000 3.174 0.743
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.620 0.027 23.335 0.000 0.589 0.558
ipudrst (b) 0.672 0.027 25.143 0.000 0.639 0.608
impenv (c) 0.501 0.026 19.088 0.000 0.476 0.437
TraditionConformity =~
imptrad (d) 0.565 0.028 20.141 0.000 0.678 0.476
ipfrule (e) 0.750 0.029 26.121 0.000 0.900 0.622
ipbhprp (f) 0.666 0.031 21.822 0.000 0.800 0.620
PerceivedThreat =~
imbgeco (g) 1.579 0.042 37.617 0.000 2.041 0.826
imueclt (h) 1.625 0.043 37.727 0.000 2.100 0.790
imtcjob (i) 1.257 0.038 33.207 0.000 1.624 0.688
rlgueim (j) 0.949 0.033 28.420 0.000 1.227 0.541
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.914 0.131 6.964 0.000 0.914 0.295
Universalism ~~
TraditnCnfrmty 0.279 0.056 5.011 0.000 0.245 0.245
PerceivedThret -0.492 0.051 -9.663 0.000 -0.400 -0.400
TraditionConformity ~~
PerceivedThret 0.336 0.058 5.756 0.000 0.216 0.216
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.237 0.000 4.566 4.323
.ipudrst (l) 4.313 0.028 154.460 0.000 4.313 4.105
.impenv (m) 4.573 0.023 195.735 0.000 4.573 4.192
Universlsm 0.622 0.050 12.493 0.000 0.655 0.655
.imptrad (o) 4.479 0.026 169.893 0.000 4.479 3.143
.ipfrule (p) 4.154 0.035 119.503 0.000 4.154 2.869
.ipbhprp (q) 4.634 0.025 185.843 0.000 4.634 3.595
TrdtnCnfrm -0.564 0.063 -8.987 0.000 -0.470 -0.470
.imbgeco (r) 6.385 0.052 123.358 0.000 6.385 2.582
.imueclt (s) 6.139 0.052 117.875 0.000 6.139 2.311
.imtcjob (t) 6.305 0.051 124.764 0.000 6.305 2.672
.rlgueim (u) 6.158 0.042 146.904 0.000 6.158 2.717
PercvdThrt -0.771 0.048 -16.000 0.000 -0.596 -0.596
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.903 0.097 9.295 0.000 1.000 1.000
TraditnCnfrmty 1.441 0.133 10.860 0.000 1.000 1.000
PerceivedThret 1.670 0.106 15.779 0.000 1.000 1.000
.ipeqopt 0.768 0.043 17.956 0.000 0.768 0.689
.ipudrst 0.696 0.040 17.356 0.000 0.696 0.631
.impenv 0.963 0.041 23.757 0.000 0.963 0.809
.imptrad 1.571 0.056 27.982 0.000 1.571 0.774
.ipfrule 1.286 0.063 20.471 0.000 1.286 0.613
.ipbhprp 1.022 0.052 19.636 0.000 1.022 0.615
.imbgeco 1.947 0.128 15.200 0.000 1.947 0.318
.imueclt 2.650 0.166 15.936 0.000 2.650 0.375
.imtcjob 2.930 0.147 19.866 0.000 2.930 0.526
.rlgueim 3.632 0.151 24.065 0.000 3.632 0.707
compFit.scfa <- compareFit(
scalar = scfa_fit_scalar,
metric = scfa_fit_metric,
config = scfa_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.scfa,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 93 202254 202935 555.17
metric 107 202264 202851 592.98 31.04 14 0.005479 **
scalar 121 202570 203064 927.21 327.62 14 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 477.046† 93 .000 .046 .958† .939
metric 506.441 107 .000 .044† .956 .945†
scalar 803.868 121 .000 .054 .925 .916
srmr aic bic
config .034† 202254.443† 202935.107
metric .036 202264.246 202851.485†
scalar .044 202570.478 203064.293
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 14 -0.002 -0.002 0.006 0.002 9.802
scalar - metric 14 0.010 -0.031 -0.028 0.008 306.232
bic
metric - config -83.622
scalar - metric 212.808
Fixed factor method
compFit.scfa2 <- compareFit(
scalar = scfa_fit_scalar2,
metric = scfa_fit_metric2,
config = scfa_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.scfa2,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 93 202254 202935 555.17
metric 107 202264 202851 592.98 31.04 14 0.005479 **
scalar 121 202570 203064 927.21 327.62 14 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 477.046† 93 .000 .046 .958† .939
metric 506.441 107 .000 .044† .956 .945†
scalar 803.868 121 .000 .054 .925 .916
srmr aic bic
config .034† 202254.443† 202935.107
metric .036 202264.246 202851.485†
scalar .044 202570.478 203064.293
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 14 -0.002 -0.002 0.006 0.002 9.802
scalar - metric 14 0.010 -0.031 -0.028 0.008 306.232
bic
metric - config -83.622
scalar - metric 212.808
scfa_fit_scalar %>%
lavTestScore() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
test | X2 | df | p.value
-----------------------------
score | 368.90 | 34 | 0
lhs | op | rhs | X2 | df | p.value
-------------------------------------------
.p2. | == | .p42. | 9.38 | 1 | 2.19e-03
.p2. | == | .p82. | 0.06 | 1 | 0.80
.p3. | == | .p43. | 4.00 | 1 | 0.05
.p3. | == | .p83. | 5.48 | 1 | 0.02
.p5. | == | .p45. | 5.38 | 1 | 0.02
.p5. | == | .p85. | 4.51 | 1 | 0.03
.p6. | == | .p46. | 0.01 | 1 | 0.91
.p6. | == | .p86. | 16.08 | 1 | 6.08e-05
.p8. | == | .p48. | 1.81 | 1 | 0.18
.p8. | == | .p88. | 0.41 | 1 | 0.52
.p9. | == | .p49. | 2.24 | 1 | 0.13
.p9. | == | .p89. | 2.43 | 1 | 0.12
.p10. | == | .p50. | 1.94 | 1 | 0.16
.p10. | == | .p90. | 1.31 | 1 | 0.25
.p28. | == | .p68. | 1.89 | 1 | 0.17
.p28. | == | .p108. | 8.81 | 1 | 2.99e-03
.p29. | == | .p69. | 20.89 | 1 | 4.86e-06
.p29. | == | .p109. | 1.62 | 1 | 0.20
.p30. | == | .p70. | 16.16 | 1 | 5.82e-05
.p30. | == | .p110. | 3.94 | 1 | 0.05
.p31. | == | .p71. | 11.14 | 1 | 8.45e-04
.p31. | == | .p111. | 0.66 | 1 | 0.42
.p32. | == | .p72. | 25.54 | 1 | 4.33e-07
.p32. | == | .p112. | 37.13 | 1 | 1.11e-09
.p33. | == | .p73. | 5.59 | 1 | 0.02
.p33. | == | .p113. | 46.24 | 1 | 1.05e-11
.p34. | == | .p74. | 45.37 | 1 | 1.63e-11
.p34. | == | .p114. | 11.67 | 1 | 6.36e-04
.p35. | == | .p75. | 5.37 | 1 | 0.02
.p35. | == | .p115. | 7.71 | 1 | 5.50e-03
.p36. | == | .p76. | 19.09 | 1 | 1.24e-05
.p36. | == | .p116. | 4.47 | 1 | 0.03
.p37. | == | .p77. | 0.76 | 1 | 0.38
.p37. | == | .p117. | 12.09 | 1 | 5.07e-04
.p33. == .p113. -> Constraint with the largest χ2reduction
What do the parameter labels (.p33. & .p113.) mean?
scfa_fit_scalar %>%
parTable() %>%
select(lhs, op, rhs, group, label, plabel, est, se) %>%
# optional for better display
export_table(table_width = 1, digits = 2)
lhs | op | rhs | group | label | plabel | est | se
------------------------------------------------------------------------------------------
Universalism | =~ | ipeqopt | 1 | | .p1. | 1.00 | 0.00
Universalism | =~ | ipudrst | 1 | .p2. | .p2. | 1.08 | 0.05
Universalism | =~ | impenv | 1 | .p3. | .p3. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 1 | | .p4. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 1 | .p5. | .p5. | 1.33 | 0.06
TraditionConformity | =~ | ipbhprp | 1 | .p6. | .p6. | 1.18 | 0.05
PerceivedThreat | =~ | imbgeco | 1 | | .p7. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 1 | .p8. | .p8. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 1 | .p9. | .p9. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 1 | .p10. | .p10. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 1 | | .p11. | 0.31 | 0.11
ipeqopt | ~~ | ipeqopt | 1 | | .p12. | 0.76 | 0.05
ipudrst | ~~ | ipudrst | 1 | | .p13. | 0.81 | 0.04
impenv | ~~ | impenv | 1 | | .p14. | 0.78 | 0.04
imptrad | ~~ | imptrad | 1 | | .p15. | 1.29 | 0.06
ipfrule | ~~ | ipfrule | 1 | | .p16. | 0.80 | 0.06
ipbhprp | ~~ | ipbhprp | 1 | | .p17. | 0.88 | 0.06
imbgeco | ~~ | imbgeco | 1 | | .p18. | 1.75 | 0.13
imueclt | ~~ | imueclt | 1 | | .p19. | 1.57 | 0.14
imtcjob | ~~ | imtcjob | 1 | | .p20. | 2.90 | 0.15
rlgueim | ~~ | rlgueim | 1 | | .p21. | 3.12 | 0.17
Universalism | ~~ | Universalism | 1 | | .p22. | 0.38 | 0.03
TraditionConformity | ~~ | TraditionConformity | 1 | | .p23. | 0.32 | 0.03
PerceivedThreat | ~~ | PerceivedThreat | 1 | | .p24. | 2.49 | 0.13
Universalism | ~~ | TraditionConformity | 1 | | .p25. | 0.30 | 0.02
Universalism | ~~ | PerceivedThreat | 1 | | .p26. | -0.07 | 0.04
TraditionConformity | ~~ | PerceivedThreat | 1 | | .p27. | 0.06 | 0.04
ipeqopt | ~1 | | 1 | .p28. | .p28. | 4.57 | 0.03
ipudrst | ~1 | | 1 | .p29. | .p29. | 4.31 | 0.03
impenv | ~1 | | 1 | .p30. | .p30. | 4.57 | 0.02
imptrad | ~1 | | 1 | .p31. | .p31. | 4.48 | 0.03
ipfrule | ~1 | | 1 | .p32. | .p32. | 4.15 | 0.03
ipbhprp | ~1 | | 1 | .p33. | .p33. | 4.63 | 0.02
imbgeco | ~1 | | 1 | .p34. | .p34. | 6.38 | 0.05
imueclt | ~1 | | 1 | .p35. | .p35. | 6.14 | 0.05
imtcjob | ~1 | | 1 | .p36. | .p36. | 6.30 | 0.05
rlgueim | ~1 | | 1 | .p37. | .p37. | 6.16 | 0.04
Universalism | ~1 | | 1 | | .p38. | 0.00 | 0.00
TraditionConformity | ~1 | | 1 | | .p39. | 0.00 | 0.00
PerceivedThreat | ~1 | | 1 | | .p40. | 0.00 | 0.00
Universalism | =~ | ipeqopt | 2 | | .p41. | 1.00 | 0.00
Universalism | =~ | ipudrst | 2 | .p2. | .p42. | 1.08 | 0.05
Universalism | =~ | impenv | 2 | .p3. | .p43. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 2 | | .p44. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 2 | .p5. | .p45. | 1.33 | 0.06
TraditionConformity | =~ | ipbhprp | 2 | .p6. | .p46. | 1.18 | 0.05
PerceivedThreat | =~ | imbgeco | 2 | | .p47. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 2 | .p8. | .p48. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 2 | .p9. | .p49. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 2 | .p10. | .p50. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 2 | | .p51. | 0.71 | 0.09
ipeqopt | ~~ | ipeqopt | 2 | | .p52. | 0.68 | 0.04
ipudrst | ~~ | ipudrst | 2 | | .p53. | 0.51 | 0.03
impenv | ~~ | impenv | 2 | | .p54. | 0.74 | 0.03
imptrad | ~~ | imptrad | 2 | | .p55. | 1.46 | 0.05
ipfrule | ~~ | ipfrule | 2 | | .p56. | 1.25 | 0.05
ipbhprp | ~~ | ipbhprp | 2 | | .p57. | 1.08 | 0.04
imbgeco | ~~ | imbgeco | 2 | | .p58. | 2.15 | 0.11
imueclt | ~~ | imueclt | 2 | | .p59. | 2.41 | 0.12
imtcjob | ~~ | imtcjob | 2 | | .p60. | 2.45 | 0.11
rlgueim | ~~ | rlgueim | 2 | | .p61. | 3.17 | 0.11
Universalism | ~~ | Universalism | 2 | | .p62. | 0.23 | 0.02
TraditionConformity | ~~ | TraditionConformity | 2 | | .p63. | 0.43 | 0.03
PerceivedThreat | ~~ | PerceivedThreat | 2 | | .p64. | 3.04 | 0.14
Universalism | ~~ | TraditionConformity | 2 | | .p65. | 0.06 | 0.01
Universalism | ~~ | PerceivedThreat | 2 | | .p66. | -0.36 | 0.03
TraditionConformity | ~~ | PerceivedThreat | 2 | | .p67. | 0.27 | 0.04
ipeqopt | ~1 | | 2 | .p28. | .p68. | 4.57 | 0.03
ipudrst | ~1 | | 2 | .p29. | .p69. | 4.31 | 0.03
impenv | ~1 | | 2 | .p30. | .p70. | 4.57 | 0.02
imptrad | ~1 | | 2 | .p31. | .p71. | 4.48 | 0.03
ipfrule | ~1 | | 2 | .p32. | .p72. | 4.15 | 0.03
ipbhprp | ~1 | | 2 | .p33. | .p73. | 4.63 | 0.02
imbgeco | ~1 | | 2 | .p34. | .p74. | 6.38 | 0.05
imueclt | ~1 | | 2 | .p35. | .p75. | 6.14 | 0.05
imtcjob | ~1 | | 2 | .p36. | .p76. | 6.30 | 0.05
rlgueim | ~1 | | 2 | .p37. | .p77. | 6.16 | 0.04
Universalism | ~1 | | 2 | | .p78. | 0.57 | 0.03
TraditionConformity | ~1 | | 2 | | .p79. | -0.50 | 0.03
PerceivedThreat | ~1 | | 2 | | .p80. | -2.28 | 0.06
Universalism | =~ | ipeqopt | 3 | | .p81. | 1.00 | 0.00
Universalism | =~ | ipudrst | 3 | .p2. | .p82. | 1.08 | 0.05
Universalism | =~ | impenv | 3 | .p3. | .p83. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 3 | | .p84. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 3 | .p5. | .p85. | 1.33 | 0.06
TraditionConformity | =~ | ipbhprp | 3 | .p6. | .p86. | 1.18 | 0.05
PerceivedThreat | =~ | imbgeco | 3 | | .p87. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 3 | .p8. | .p88. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 3 | .p9. | .p89. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 3 | .p10. | .p90. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 3 | | .p91. | 0.91 | 0.13
ipeqopt | ~~ | ipeqopt | 3 | | .p92. | 0.77 | 0.04
ipudrst | ~~ | ipudrst | 3 | | .p93. | 0.70 | 0.04
impenv | ~~ | impenv | 3 | | .p94. | 0.96 | 0.04
imptrad | ~~ | imptrad | 3 | | .p95. | 1.57 | 0.06
ipfrule | ~~ | ipfrule | 3 | | .p96. | 1.29 | 0.06
ipbhprp | ~~ | ipbhprp | 3 | | .p97. | 1.02 | 0.05
imbgeco | ~~ | imbgeco | 3 | | .p98. | 1.95 | 0.13
imueclt | ~~ | imueclt | 3 | | .p99. | 2.65 | 0.17
imtcjob | ~~ | imtcjob | 3 | | .p100. | 2.93 | 0.15
rlgueim | ~~ | rlgueim | 3 | | .p101. | 3.63 | 0.15
Universalism | ~~ | Universalism | 3 | | .p102. | 0.35 | 0.03
TraditionConformity | ~~ | TraditionConformity | 3 | | .p103. | 0.46 | 0.04
PerceivedThreat | ~~ | PerceivedThreat | 3 | | .p104. | 4.17 | 0.18
Universalism | ~~ | TraditionConformity | 3 | | .p105. | 0.10 | 0.02
Universalism | ~~ | PerceivedThreat | 3 | | .p106. | -0.48 | 0.05
TraditionConformity | ~~ | PerceivedThreat | 3 | | .p107. | 0.30 | 0.05
ipeqopt | ~1 | | 3 | .p28. | .p108. | 4.57 | 0.03
ipudrst | ~1 | | 3 | .p29. | .p109. | 4.31 | 0.03
impenv | ~1 | | 3 | .p30. | .p110. | 4.57 | 0.02
imptrad | ~1 | | 3 | .p31. | .p111. | 4.48 | 0.03
ipfrule | ~1 | | 3 | .p32. | .p112. | 4.15 | 0.03
ipbhprp | ~1 | | 3 | .p33. | .p113. | 4.63 | 0.02
imbgeco | ~1 | | 3 | .p34. | .p114. | 6.38 | 0.05
imueclt | ~1 | | 3 | .p35. | .p115. | 6.14 | 0.05
imtcjob | ~1 | | 3 | .p36. | .p116. | 6.30 | 0.05
rlgueim | ~1 | | 3 | .p37. | .p117. | 6.16 | 0.04
Universalism | ~1 | | 3 | | .p118. | 0.39 | 0.03
TraditionConformity | ~1 | | 3 | | .p119. | -0.32 | 0.03
PerceivedThreat | ~1 | | 3 | | .p120. | -1.22 | 0.07
.p2. | == | .p42. | 0 | | | -2.22e-16 | 0.00
.p2. | == | .p82. | 0 | | | 4.44e-16 | 0.00
.p3. | == | .p43. | 0 | | | 0.00 | 0.00
.p3. | == | .p83. | 0 | | | 4.44e-16 | 0.00
.p5. | == | .p45. | 0 | | | 0.00 | 0.00
.p5. | == | .p85. | 0 | | | 2.22e-16 | 0.00
.p6. | == | .p46. | 0 | | | 0.00 | 0.00
.p6. | == | .p86. | 0 | | | 2.22e-16 | 0.00
.p8. | == | .p48. | 0 | | | 4.44e-16 | 0.00
.p8. | == | .p88. | 0 | | | 6.66e-16 | 0.00
.p9. | == | .p49. | 0 | | | -1.11e-16 | 0.00
.p9. | == | .p89. | 0 | | | 5.55e-16 | 0.00
.p10. | == | .p50. | 0 | | | 0.00 | 0.00
.p10. | == | .p90. | 0 | | | 4.44e-16 | 0.00
.p28. | == | .p68. | 0 | | | -8.88e-16 | 0.00
.p28. | == | .p108. | 0 | | | 1.78e-15 | 0.00
.p29. | == | .p69. | 0 | | | 8.88e-16 | 0.00
.p29. | == | .p109. | 0 | | | 1.78e-15 | 0.00
.p30. | == | .p70. | 0 | | | 0.00 | 0.00
.p30. | == | .p110. | 0 | | | 0.00 | 0.00
.p31. | == | .p71. | 0 | | | 0.00 | 0.00
.p31. | == | .p111. | 0 | | | 1.78e-15 | 0.00
.p32. | == | .p72. | 0 | | | 0.00 | 0.00
.p32. | == | .p112. | 0 | | | 8.88e-16 | 0.00
.p33. | == | .p73. | 0 | | | -8.88e-16 | 0.00
.p33. | == | .p113. | 0 | | | 8.88e-16 | 0.00
.p34. | == | .p74. | 0 | | | -8.88e-16 | 0.00
.p34. | == | .p114. | 0 | | | 2.66e-15 | 0.00
.p35. | == | .p75. | 0 | | | 0.00 | 0.00
.p35. | == | .p115. | 0 | | | 8.88e-16 | 0.00
.p36. | == | .p76. | 0 | | | 0.00 | 0.00
.p36. | == | .p116. | 0 | | | 1.78e-15 | 0.00
.p37. | == | .p77. | 0 | | | -1.78e-15 | 0.00
.p37. | == | .p117. | 0 | | | 1.78e-15 | 0.00
Reference indicator method
scfa_fit_scalar_partial <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
group.partial = c("ipbhprp~1"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_scalar_partial,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 112 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 108
Number of equality constraints 32
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 811.457 701.358
Degrees of freedom 119 119
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.157
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 225.171 194.620
DE 308.736 266.847
GB 277.550 239.892
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.940 0.936
Tucker-Lewis Index (TLI) 0.932 0.927
Robust Comparative Fit Index (CFI) 0.941
Robust Tucker-Lewis Index (TLI) 0.933
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101153.364 -101153.364
Scaling correction factor 0.877
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202458.727 202458.727
Bayesian (BIC) 202965.888 202965.888
Sample-size adjusted Bayesian (BIC) 202724.382 202724.382
Root Mean Square Error of Approximation:
RMSEA 0.055 0.050
90 Percent confidence interval - lower 0.051 0.047
90 Percent confidence interval - upper 0.058 0.053
P-value RMSEA <= 0.05 0.015 0.469
Robust RMSEA 0.054
90 Percent confidence interval - lower 0.050
90 Percent confidence interval - upper 0.058
Standardized Root Mean Square Residual:
SRMR 0.042 0.042
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.619 0.579
ipudrst (.p2.) 1.088 0.045 23.977 0.000 0.674 0.601
impenv (.p3.) 0.808 0.037 21.833 0.000 0.500 0.491
TraditionConformity =~
imptrad 1.000 0.538 0.424
ipfrule (.p5.) 1.344 0.054 25.108 0.000 0.723 0.631
ipbhprp (.p6.) 1.386 0.066 21.133 0.000 0.746 0.644
PerceivedThreat =~
imbgeco 1.000 1.580 0.767
imueclt (.p8.) 1.028 0.018 57.425 0.000 1.624 0.791
imtcjob (.p9.) 0.796 0.016 51.027 0.000 1.257 0.594
rlgueim (.10.) 0.601 0.018 33.766 0.000 0.949 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.313 0.112 2.787 0.005 0.313 0.141
Universalism ~~
TraditnCnfrmty 0.280 0.020 13.816 0.000 0.839 0.839
PerceivedThret -0.070 0.040 -1.781 0.075 -0.072 -0.072
TraditionConformity ~~
PerceivedThret 0.057 0.035 1.605 0.108 0.067 0.067
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.329 0.000 4.566 4.271
.ipudrst (.29.) 4.312 0.028 154.123 0.000 4.312 3.844
.impenv (.30.) 4.573 0.023 196.039 0.000 4.573 4.491
.imptrad (.31.) 4.552 0.026 177.578 0.000 4.552 3.590
.ipfrule (.32.) 4.250 0.031 136.700 0.000 4.250 3.710
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.868
.imbgeco (.34.) 6.385 0.052 123.376 0.000 6.385 3.099
.imueclt (.35.) 6.138 0.052 117.877 0.000 6.138 2.990
.imtcjob (.36.) 6.305 0.051 124.771 0.000 6.305 2.978
.rlgueim (.37.) 6.158 0.042 146.916 0.000 6.158 3.070
Unvrsls 0.000 0.000 0.000
TrdtnCn 0.000 0.000 0.000
PrcvdTh 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.760 0.049 15.556 0.000 0.760 0.665
.ipudrst 0.805 0.045 18.047 0.000 0.805 0.639
.impenv 0.787 0.038 20.901 0.000 0.787 0.759
.imptrad 1.318 0.063 20.848 0.000 1.318 0.820
.ipfrule 0.790 0.050 15.858 0.000 0.790 0.602
.ipbhprp 0.784 0.054 14.582 0.000 0.784 0.585
.imbgeco 1.751 0.129 13.532 0.000 1.751 0.412
.imueclt 1.575 0.136 11.595 0.000 1.575 0.374
.imtcjob 2.901 0.154 18.785 0.000 2.901 0.647
.rlgueim 3.122 0.170 18.387 0.000 3.122 0.776
Universalism 0.383 0.033 11.661 0.000 1.000 1.000
TraditnCnfrmty 0.289 0.028 10.227 0.000 1.000 1.000
PerceivedThret 2.495 0.133 18.809 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.481 0.502
ipudrst (.p2.) 1.088 0.045 23.977 0.000 0.523 0.591
impenv (.p3.) 0.808 0.037 21.833 0.000 0.389 0.411
TraditionConformity =~
imptrad 1.000 0.613 0.449
ipfrule (.p5.) 1.344 0.054 25.108 0.000 0.823 0.585
ipbhprp (.p6.) 1.386 0.066 21.133 0.000 0.849 0.650
PerceivedThreat =~
imbgeco 1.000 1.744 0.765
imueclt (.p8.) 1.028 0.018 57.425 0.000 1.794 0.756
imtcjob (.p9.) 0.796 0.016 51.027 0.000 1.388 0.664
rlgueim (.10.) 0.601 0.018 33.766 0.000 1.048 0.507
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.712 0.088 8.111 0.000 0.712 0.257
Universalism ~~
TraditnCnfrmty 0.058 0.011 5.106 0.000 0.197 0.197
PerceivedThret -0.361 0.031 -11.619 0.000 -0.430 -0.430
TraditionConformity ~~
PerceivedThret 0.252 0.034 7.301 0.000 0.235 0.235
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.329 0.000 4.566 4.769
.ipudrst (.29.) 4.312 0.028 154.123 0.000 4.312 4.865
.impenv (.30.) 4.573 0.023 196.039 0.000 4.573 4.841
.imptrad (.31.) 4.552 0.026 177.578 0.000 4.552 3.335
.ipfrule (.32.) 4.250 0.031 136.700 0.000 4.250 3.023
.ipbhprp 4.876 0.050 97.404 0.000 4.876 3.733
.imbgeco (.34.) 6.385 0.052 123.376 0.000 6.385 2.802
.imueclt (.35.) 6.138 0.052 117.877 0.000 6.138 2.587
.imtcjob (.36.) 6.305 0.051 124.771 0.000 6.305 3.014
.rlgueim (.37.) 6.158 0.042 146.916 0.000 6.158 2.979
Unvrsls 0.571 0.029 19.668 0.000 1.187 1.187
TrdtnCn -0.581 0.030 -19.684 0.000 -0.948 -0.948
PrcvdTh -2.279 0.063 -35.984 0.000 -1.306 -1.306
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.685 0.038 17.836 0.000 0.685 0.748
.ipudrst 0.512 0.028 18.106 0.000 0.512 0.651
.impenv 0.741 0.030 24.645 0.000 0.741 0.831
.imptrad 1.488 0.045 32.784 0.000 1.488 0.799
.ipfrule 1.300 0.046 28.097 0.000 1.300 0.657
.ipbhprp 0.986 0.047 20.875 0.000 0.986 0.578
.imbgeco 2.150 0.111 19.298 0.000 2.150 0.414
.imueclt 2.413 0.118 20.479 0.000 2.413 0.429
.imtcjob 2.448 0.112 21.899 0.000 2.448 0.560
.rlgueim 3.175 0.110 28.942 0.000 3.175 0.743
Universalism 0.231 0.020 11.675 0.000 1.000 1.000
TraditnCnfrmty 0.375 0.030 12.684 0.000 1.000 1.000
PerceivedThret 3.042 0.136 22.405 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.588 0.557
ipudrst (.p2.) 1.088 0.045 23.977 0.000 0.640 0.609
impenv (.p3.) 0.808 0.037 21.833 0.000 0.475 0.436
TraditionConformity =~
imptrad 1.000 0.633 0.446
ipfrule (.p5.) 1.344 0.054 25.108 0.000 0.851 0.593
ipbhprp (.p6.) 1.386 0.066 21.133 0.000 0.877 0.676
PerceivedThreat =~
imbgeco 1.000 2.041 0.826
imueclt (.p8.) 1.028 0.018 57.425 0.000 2.099 0.790
imtcjob (.p9.) 0.796 0.016 51.027 0.000 1.624 0.688
rlgueim (.10.) 0.601 0.018 33.766 0.000 1.227 0.541
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.915 0.131 6.969 0.000 0.915 0.295
Universalism ~~
TraditnCnfrmty 0.090 0.018 5.147 0.000 0.243 0.243
PerceivedThret -0.481 0.048 -10.023 0.000 -0.400 -0.400
TraditionConformity ~~
PerceivedThret 0.269 0.048 5.600 0.000 0.208 0.208
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.566 0.026 176.329 0.000 4.566 4.325
.ipudrst (.29.) 4.312 0.028 154.123 0.000 4.312 4.102
.impenv (.30.) 4.573 0.023 196.039 0.000 4.573 4.192
.imptrad (.31.) 4.552 0.026 177.578 0.000 4.552 3.211
.ipfrule (.32.) 4.250 0.031 136.700 0.000 4.250 2.962
.ipbhprp 4.986 0.050 99.439 0.000 4.986 3.845
.imbgeco (.34.) 6.385 0.052 123.376 0.000 6.385 2.583
.imueclt (.35.) 6.138 0.052 117.877 0.000 6.138 2.310
.imtcjob (.36.) 6.305 0.051 124.771 0.000 6.305 2.672
.rlgueim (.37.) 6.158 0.042 146.916 0.000 6.158 2.717
Unvrsls 0.386 0.031 12.434 0.000 0.655 0.655
TrdtnCn -0.449 0.032 -13.979 0.000 -0.709 -0.709
PrcvdTh -1.217 0.074 -16.525 0.000 -0.596 -0.596
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.769 0.043 17.968 0.000 0.769 0.689
.ipudrst 0.695 0.040 17.277 0.000 0.695 0.629
.impenv 0.964 0.041 23.788 0.000 0.964 0.810
.imptrad 1.610 0.054 29.598 0.000 1.610 0.801
.ipfrule 1.336 0.058 23.109 0.000 1.336 0.649
.ipbhprp 0.913 0.055 16.477 0.000 0.913 0.542
.imbgeco 1.946 0.128 15.199 0.000 1.946 0.318
.imueclt 2.653 0.166 15.963 0.000 2.653 0.376
.imtcjob 2.929 0.147 19.859 0.000 2.929 0.526
.rlgueim 3.632 0.151 24.075 0.000 3.632 0.707
Universalism 0.346 0.031 11.015 0.000 1.000 1.000
TraditnCnfrmty 0.401 0.036 11.251 0.000 1.000 1.000
PerceivedThret 4.167 0.178 23.464 0.000 1.000 1.000
Fixed factor method
scfa_fit_scalar_partial2 <- cfa(
model = "
Universalism =~ c(NA,NA,NA)*ipeqopt + c(a,a,a)*ipeqopt + c(b,b,b)*ipudrst + c(c,c,c)*impenv
ipeqopt ~ c(k,k,k)*1
ipudrst ~ c(l,l,l)*1
impenv ~ c(m,m,m)*1
Universalism ~ c(0,NA,NA)*1
Universalism ~~ c(1,NA,NA)*Universalism
TraditionConformity =~ c(NA,NA,NA)*imptrad + c(d,d,d)*imptrad + c(e,e,e)*ipfrule + c(f,f,f)*ipbhprp
imptrad ~ c(o,o,o)*1
ipfrule ~ c(p,p,p)*1
ipbhprp ~ c(NA,NA,NA)*1 # !
TraditionConformity ~ c(0,NA,NA)*1
TraditionConformity ~~ c(1,NA,NA)*TraditionConformity
PerceivedThreat =~ c(NA,NA,NA)*imbgeco + c(g,g,g)*imbgeco + c(h,h,h)*imueclt + c(i,i,i)*imtcjob + c(j,j,j)*rlgueim
imueclt ~~ rlgueim
imbgeco ~ c(r,r,r)*1
imueclt ~ c(s,s,s)*1
imtcjob ~ c(t,t,t)*1
rlgueim ~ c(u,u,u)*1
PerceivedThreat ~ c(0,NA,NA)*1
PerceivedThreat ~~ c(1,NA,NA)*PerceivedThreat
",
data = ESS07,
estimator = "MLR",
group = "country",
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_scalar_partial2,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 117 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 114
Number of equality constraints 38
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 811.457 701.358
Degrees of freedom 119 119
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.157
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 225.171 194.620
DE 308.736 266.846
GB 277.550 239.892
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.940 0.936
Tucker-Lewis Index (TLI) 0.932 0.927
Robust Comparative Fit Index (CFI) 0.941
Robust Tucker-Lewis Index (TLI) 0.933
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101153.364 -101153.364
Scaling correction factor 0.831
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202458.727 202458.727
Bayesian (BIC) 202965.888 202965.888
Sample-size adjusted Bayesian (BIC) 202724.382 202724.382
Root Mean Square Error of Approximation:
RMSEA 0.055 0.050
90 Percent confidence interval - lower 0.051 0.047
90 Percent confidence interval - upper 0.058 0.053
P-value RMSEA <= 0.05 0.015 0.469
Robust RMSEA 0.054
90 Percent confidence interval - lower 0.050
90 Percent confidence interval - upper 0.058
Standardized Root Mean Square Residual:
SRMR 0.042 0.042
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.619 0.027 23.322 0.000 0.619 0.579
ipudrst (b) 0.674 0.027 25.115 0.000 0.674 0.601
impenv (c) 0.500 0.026 19.092 0.000 0.500 0.491
TraditionConformity =~
imptrad (d) 0.538 0.026 20.454 0.000 0.538 0.424
ipfrule (e) 0.723 0.028 26.252 0.000 0.723 0.631
ipbhprp (f) 0.746 0.032 23.161 0.000 0.746 0.644
PerceivedThreat =~
imbgeco (g) 1.580 0.042 37.618 0.000 1.580 0.767
imueclt (h) 1.624 0.043 37.730 0.000 1.624 0.791
imtcjob (i) 1.257 0.038 33.210 0.000 1.257 0.594
rlgueim (j) 0.949 0.033 28.425 0.000 0.949 0.473
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.313 0.112 2.787 0.005 0.313 0.141
Universalism ~~
TraditnCnfrmty 0.839 0.041 20.701 0.000 0.839 0.839
PerceivedThret -0.072 0.040 -1.790 0.073 -0.072 -0.072
TraditionConformity ~~
PerceivedThret 0.067 0.041 1.618 0.106 0.067 0.067
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.328 0.000 4.566 4.271
.ipudrst (l) 4.312 0.028 154.123 0.000 4.312 3.844
.impenv (m) 4.573 0.023 196.040 0.000 4.573 4.491
Universlsm 0.000 0.000 0.000
.imptrad (o) 4.552 0.026 177.578 0.000 4.552 3.590
.ipfrule (p) 4.250 0.031 136.700 0.000 4.250 3.710
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.868
TrdtnCnfrm 0.000 0.000 0.000
.imbgeco (r) 6.385 0.052 123.376 0.000 6.385 3.099
.imueclt (s) 6.138 0.052 117.877 0.000 6.138 2.990
.imtcjob (t) 6.305 0.051 124.771 0.000 6.305 2.978
.rlgueim (u) 6.158 0.042 146.916 0.000 6.158 3.070
PercvdThrt 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 1.000 1.000 1.000
TraditnCnfrmty 1.000 1.000 1.000
PerceivedThret 1.000 1.000 1.000
.ipeqopt 0.760 0.049 15.556 0.000 0.760 0.665
.ipudrst 0.805 0.045 18.047 0.000 0.805 0.639
.impenv 0.787 0.038 20.901 0.000 0.787 0.759
.imptrad 1.318 0.063 20.848 0.000 1.318 0.820
.ipfrule 0.790 0.050 15.858 0.000 0.790 0.602
.ipbhprp 0.784 0.054 14.582 0.000 0.784 0.585
.imbgeco 1.751 0.129 13.532 0.000 1.751 0.412
.imueclt 1.575 0.136 11.595 0.000 1.575 0.374
.imtcjob 2.901 0.154 18.785 0.000 2.901 0.647
.rlgueim 3.122 0.170 18.387 0.000 3.122 0.776
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.619 0.027 23.322 0.000 0.481 0.502
ipudrst (b) 0.674 0.027 25.115 0.000 0.523 0.591
impenv (c) 0.500 0.026 19.092 0.000 0.389 0.411
TraditionConformity =~
imptrad (d) 0.538 0.026 20.454 0.000 0.613 0.449
ipfrule (e) 0.723 0.028 26.252 0.000 0.823 0.585
ipbhprp (f) 0.746 0.032 23.161 0.000 0.849 0.650
PerceivedThreat =~
imbgeco (g) 1.580 0.042 37.618 0.000 1.744 0.765
imueclt (h) 1.624 0.043 37.730 0.000 1.794 0.756
imtcjob (i) 1.257 0.038 33.210 0.000 1.388 0.664
rlgueim (j) 0.949 0.033 28.425 0.000 1.048 0.507
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.712 0.088 8.110 0.000 0.712 0.257
Universalism ~~
TraditnCnfrmty 0.174 0.035 4.989 0.000 0.197 0.197
PerceivedThret -0.369 0.034 -10.815 0.000 -0.430 -0.430
TraditionConformity ~~
PerceivedThret 0.296 0.040 7.316 0.000 0.235 0.235
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.328 0.000 4.566 4.769
.ipudrst (l) 4.312 0.028 154.123 0.000 4.312 4.865
.impenv (m) 4.573 0.023 196.040 0.000 4.573 4.841
Universlsm 0.923 0.050 18.376 0.000 1.187 1.187
.imptrad (o) 4.552 0.026 177.578 0.000 4.552 3.335
.ipfrule (p) 4.250 0.031 136.700 0.000 4.250 3.023
.ipbhprp 4.876 0.050 97.406 0.000 4.876 3.733
TrdtnCnfrm -1.079 0.070 -15.447 0.000 -0.948 -0.948
.imbgeco (r) 6.385 0.052 123.376 0.000 6.385 2.802
.imueclt (s) 6.138 0.052 117.877 0.000 6.138 2.587
.imtcjob (t) 6.305 0.051 124.771 0.000 6.305 3.014
.rlgueim (u) 6.158 0.042 146.916 0.000 6.158 2.979
PercvdThrt -1.442 0.051 -28.538 0.000 -1.306 -1.306
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.604 0.060 9.994 0.000 1.000 1.000
TraditnCnfrmty 1.296 0.109 11.903 0.000 1.000 1.000
PerceivedThret 1.219 0.077 15.919 0.000 1.000 1.000
.ipeqopt 0.685 0.038 17.836 0.000 0.685 0.748
.ipudrst 0.512 0.028 18.106 0.000 0.512 0.651
.impenv 0.741 0.030 24.645 0.000 0.741 0.831
.imptrad 1.488 0.045 32.784 0.000 1.488 0.799
.ipfrule 1.300 0.046 28.096 0.000 1.300 0.657
.ipbhprp 0.986 0.047 20.876 0.000 0.986 0.578
.imbgeco 2.150 0.111 19.298 0.000 2.150 0.414
.imueclt 2.413 0.118 20.479 0.000 2.413 0.429
.imtcjob 2.448 0.112 21.899 0.000 2.448 0.560
.rlgueim 3.175 0.110 28.942 0.000 3.175 0.743
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt (a) 0.619 0.027 23.322 0.000 0.588 0.557
ipudrst (b) 0.674 0.027 25.115 0.000 0.640 0.609
impenv (c) 0.500 0.026 19.092 0.000 0.475 0.436
TraditionConformity =~
imptrad (d) 0.538 0.026 20.454 0.000 0.633 0.446
ipfrule (e) 0.723 0.028 26.252 0.000 0.851 0.593
ipbhprp (f) 0.746 0.032 23.161 0.000 0.877 0.676
PerceivedThreat =~
imbgeco (g) 1.580 0.042 37.618 0.000 2.041 0.826
imueclt (h) 1.624 0.043 37.730 0.000 2.099 0.790
imtcjob (i) 1.257 0.038 33.210 0.000 1.624 0.688
rlgueim (j) 0.949 0.033 28.425 0.000 1.227 0.541
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.915 0.131 6.969 0.000 0.915 0.295
Universalism ~~
TraditnCnfrmty 0.271 0.054 5.027 0.000 0.243 0.243
PerceivedThret -0.492 0.051 -9.663 0.000 -0.400 -0.400
TraditionConformity ~~
PerceivedThret 0.317 0.057 5.594 0.000 0.208 0.208
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (k) 4.566 0.026 176.328 0.000 4.566 4.325
.ipudrst (l) 4.312 0.028 154.123 0.000 4.312 4.102
.impenv (m) 4.573 0.023 196.040 0.000 4.573 4.192
Universlsm 0.623 0.050 12.506 0.000 0.655 0.655
.imptrad (o) 4.552 0.026 177.578 0.000 4.552 3.211
.ipfrule (p) 4.250 0.031 136.700 0.000 4.250 2.962
.ipbhprp 4.986 0.050 99.440 0.000 4.986 3.845
TrdtnCnfrm -0.834 0.069 -12.074 0.000 -0.709 -0.709
.imbgeco (r) 6.385 0.052 123.376 0.000 6.385 2.583
.imueclt (s) 6.138 0.052 117.877 0.000 6.138 2.310
.imtcjob (t) 6.305 0.051 124.771 0.000 6.305 2.672
.rlgueim (u) 6.158 0.042 146.916 0.000 6.158 2.717
PercvdThrt -0.771 0.048 -16.002 0.000 -0.596 -0.596
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism 0.904 0.097 9.300 0.000 1.000 1.000
TraditnCnfrmty 1.384 0.124 11.200 0.000 1.000 1.000
PerceivedThret 1.670 0.106 15.778 0.000 1.000 1.000
.ipeqopt 0.769 0.043 17.968 0.000 0.769 0.689
.ipudrst 0.695 0.040 17.277 0.000 0.695 0.629
.impenv 0.964 0.041 23.788 0.000 0.964 0.810
.imptrad 1.610 0.054 29.598 0.000 1.610 0.801
.ipfrule 1.336 0.058 23.109 0.000 1.336 0.649
.ipbhprp 0.913 0.055 16.477 0.000 0.913 0.542
.imbgeco 1.946 0.128 15.199 0.000 1.946 0.318
.imueclt 2.653 0.166 15.963 0.000 2.653 0.376
.imtcjob 2.929 0.147 19.859 0.000 2.929 0.526
.rlgueim 3.632 0.151 24.075 0.000 3.632 0.707
Reference indicator method
compFit.scfa.3 <- compareFit(
scalar = scfa_fit_scalar_partial,
metric = scfa_fit_metric,
config = scfa_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.scfa.3,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 93 202254 202935 555.17
metric 107 202264 202851 592.98 31.036 14 0.005479 **
scalar 119 202459 202966 811.46 211.475 12 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 477.046† 93 .000 .046 .958† .939
metric 506.441 107 .000 .044† .956 .945†
scalar 701.358 119 .000 .050 .936 .927
srmr aic bic
config .034† 202254.443† 202935.107
metric .036 202264.246 202851.485†
scalar .042 202458.727 202965.888
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 14 -0.002 -0.002 0.006 0.002 9.802
scalar - metric 12 0.006 -0.020 -0.017 0.006 194.481
bic
metric - config -83.622
scalar - metric 114.403
Fixed factor method
compFit.scfa.4 <- compareFit(
scalar = scfa_fit_scalar_partial2,
metric = scfa_fit_metric2,
config = scfa_fit_config2,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.scfa.4,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 93 202254 202935 555.17
metric 107 202264 202851 592.98 31.036 14 0.005479 **
scalar 119 202459 202966 811.46 211.476 12 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 477.046† 93 .000 .046 .958† .939
metric 506.441 107 .000 .044† .956 .945†
scalar 701.358 119 .000 .050 .936 .927
srmr aic bic
config .034† 202254.443† 202935.107
metric .036 202264.246 202851.485†
scalar .042 202458.727 202965.888
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 14 -0.002 -0.002 0.006 0.002 9.802
scalar - metric 12 0.006 -0.020 -0.017 0.006 194.481
bic
metric - config -83.622
scalar - metric 114.403
scfa_fit_scalar_partial %>%
lavTestScore() %>%
# optional for better display
export_table(table_width = 1, digits = 2)
test | X2 | df | p.value
-----------------------------
score | 251.56 | 32 | 0
lhs | op | rhs | X2 | df | p.value
-------------------------------------------
.p2. | == | .p42. | 8.76 | 1 | 3.08e-03
.p2. | == | .p82. | 0.08 | 1 | 0.77
.p3. | == | .p43. | 3.78 | 1 | 0.05
.p3. | == | .p83. | 5.47 | 1 | 0.02
.p5. | == | .p45. | 6.19 | 1 | 0.01
.p5. | == | .p85. | 0.36 | 1 | 0.55
.p6. | == | .p46. | 0.14 | 1 | 0.71
.p6. | == | .p86. | 4.86 | 1 | 0.03
.p8. | == | .p48. | 1.83 | 1 | 0.18
.p8. | == | .p88. | 0.42 | 1 | 0.52
.p9. | == | .p49. | 2.25 | 1 | 0.13
.p9. | == | .p89. | 2.42 | 1 | 0.12
.p10. | == | .p50. | 1.92 | 1 | 0.17
.p10. | == | .p90. | 1.29 | 1 | 0.26
.p28. | == | .p68. | 1.85 | 1 | 0.17
.p28. | == | .p108. | 8.76 | 1 | 3.07e-03
.p29. | == | .p69. | 20.39 | 1 | 6.31e-06
.p29. | == | .p109. | 1.61 | 1 | 0.20
.p30. | == | .p70. | 15.87 | 1 | 6.80e-05
.p30. | == | .p110. | 3.93 | 1 | 0.05
.p31. | == | .p71. | 17.61 | 1 | 2.71e-05
.p31. | == | .p111. | 3.27 | 1 | 0.07
.p32. | == | .p72. | 17.61 | 1 | 2.71e-05
.p32. | == | .p112. | 3.27 | 1 | 0.07
.p34. | == | .p74. | 45.53 | 1 | 1.50e-11
.p34. | == | .p114. | 11.66 | 1 | 6.38e-04
.p35. | == | .p75. | 5.43 | 1 | 0.02
.p35. | == | .p115. | 7.71 | 1 | 5.50e-03
.p36. | == | .p76. | 19.06 | 1 | 1.27e-05
.p36. | == | .p116. | 4.47 | 1 | 0.03
.p37. | == | .p77. | 0.76 | 1 | 0.38
.p37. | == | .p117. | 12.10 | 1 | 5.05e-04
.p22. == .p62. -> Constraint with the largest χ2reduction
What do the parameter labels (.p22. & .p62.) mean?
scfa_fit_scalar_partial %>%
parTable() %>%
select(lhs, op, rhs, group, label, plabel, est, se) %>%
# optional for better display
export_table(table_width = 1, digits = 2)
lhs | op | rhs | group | label | plabel | est | se
------------------------------------------------------------------------------------------
Universalism | =~ | ipeqopt | 1 | | .p1. | 1.00 | 0.00
Universalism | =~ | ipudrst | 1 | .p2. | .p2. | 1.09 | 0.05
Universalism | =~ | impenv | 1 | .p3. | .p3. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 1 | | .p4. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 1 | .p5. | .p5. | 1.34 | 0.05
TraditionConformity | =~ | ipbhprp | 1 | .p6. | .p6. | 1.39 | 0.07
PerceivedThreat | =~ | imbgeco | 1 | | .p7. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 1 | .p8. | .p8. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 1 | .p9. | .p9. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 1 | .p10. | .p10. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 1 | | .p11. | 0.31 | 0.11
ipeqopt | ~~ | ipeqopt | 1 | | .p12. | 0.76 | 0.05
ipudrst | ~~ | ipudrst | 1 | | .p13. | 0.80 | 0.04
impenv | ~~ | impenv | 1 | | .p14. | 0.79 | 0.04
imptrad | ~~ | imptrad | 1 | | .p15. | 1.32 | 0.06
ipfrule | ~~ | ipfrule | 1 | | .p16. | 0.79 | 0.05
ipbhprp | ~~ | ipbhprp | 1 | | .p17. | 0.78 | 0.05
imbgeco | ~~ | imbgeco | 1 | | .p18. | 1.75 | 0.13
imueclt | ~~ | imueclt | 1 | | .p19. | 1.58 | 0.14
imtcjob | ~~ | imtcjob | 1 | | .p20. | 2.90 | 0.15
rlgueim | ~~ | rlgueim | 1 | | .p21. | 3.12 | 0.17
Universalism | ~~ | Universalism | 1 | | .p22. | 0.38 | 0.03
TraditionConformity | ~~ | TraditionConformity | 1 | | .p23. | 0.29 | 0.03
PerceivedThreat | ~~ | PerceivedThreat | 1 | | .p24. | 2.50 | 0.13
Universalism | ~~ | TraditionConformity | 1 | | .p25. | 0.28 | 0.02
Universalism | ~~ | PerceivedThreat | 1 | | .p26. | -0.07 | 0.04
TraditionConformity | ~~ | PerceivedThreat | 1 | | .p27. | 0.06 | 0.04
ipeqopt | ~1 | | 1 | .p28. | .p28. | 4.57 | 0.03
ipudrst | ~1 | | 1 | .p29. | .p29. | 4.31 | 0.03
impenv | ~1 | | 1 | .p30. | .p30. | 4.57 | 0.02
imptrad | ~1 | | 1 | .p31. | .p31. | 4.55 | 0.03
ipfrule | ~1 | | 1 | .p32. | .p32. | 4.25 | 0.03
ipbhprp | ~1 | | 1 | | .p33. | 4.48 | 0.03
imbgeco | ~1 | | 1 | .p34. | .p34. | 6.39 | 0.05
imueclt | ~1 | | 1 | .p35. | .p35. | 6.14 | 0.05
imtcjob | ~1 | | 1 | .p36. | .p36. | 6.30 | 0.05
rlgueim | ~1 | | 1 | .p37. | .p37. | 6.16 | 0.04
Universalism | ~1 | | 1 | | .p38. | 0.00 | 0.00
TraditionConformity | ~1 | | 1 | | .p39. | 0.00 | 0.00
PerceivedThreat | ~1 | | 1 | | .p40. | 0.00 | 0.00
Universalism | =~ | ipeqopt | 2 | | .p41. | 1.00 | 0.00
Universalism | =~ | ipudrst | 2 | .p2. | .p42. | 1.09 | 0.05
Universalism | =~ | impenv | 2 | .p3. | .p43. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 2 | | .p44. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 2 | .p5. | .p45. | 1.34 | 0.05
TraditionConformity | =~ | ipbhprp | 2 | .p6. | .p46. | 1.39 | 0.07
PerceivedThreat | =~ | imbgeco | 2 | | .p47. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 2 | .p8. | .p48. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 2 | .p9. | .p49. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 2 | .p10. | .p50. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 2 | | .p51. | 0.71 | 0.09
ipeqopt | ~~ | ipeqopt | 2 | | .p52. | 0.69 | 0.04
ipudrst | ~~ | ipudrst | 2 | | .p53. | 0.51 | 0.03
impenv | ~~ | impenv | 2 | | .p54. | 0.74 | 0.03
imptrad | ~~ | imptrad | 2 | | .p55. | 1.49 | 0.05
ipfrule | ~~ | ipfrule | 2 | | .p56. | 1.30 | 0.05
ipbhprp | ~~ | ipbhprp | 2 | | .p57. | 0.99 | 0.05
imbgeco | ~~ | imbgeco | 2 | | .p58. | 2.15 | 0.11
imueclt | ~~ | imueclt | 2 | | .p59. | 2.41 | 0.12
imtcjob | ~~ | imtcjob | 2 | | .p60. | 2.45 | 0.11
rlgueim | ~~ | rlgueim | 2 | | .p61. | 3.17 | 0.11
Universalism | ~~ | Universalism | 2 | | .p62. | 0.23 | 0.02
TraditionConformity | ~~ | TraditionConformity | 2 | | .p63. | 0.38 | 0.03
PerceivedThreat | ~~ | PerceivedThreat | 2 | | .p64. | 3.04 | 0.14
Universalism | ~~ | TraditionConformity | 2 | | .p65. | 0.06 | 0.01
Universalism | ~~ | PerceivedThreat | 2 | | .p66. | -0.36 | 0.03
TraditionConformity | ~~ | PerceivedThreat | 2 | | .p67. | 0.25 | 0.03
ipeqopt | ~1 | | 2 | .p28. | .p68. | 4.57 | 0.03
ipudrst | ~1 | | 2 | .p29. | .p69. | 4.31 | 0.03
impenv | ~1 | | 2 | .p30. | .p70. | 4.57 | 0.02
imptrad | ~1 | | 2 | .p31. | .p71. | 4.55 | 0.03
ipfrule | ~1 | | 2 | .p32. | .p72. | 4.25 | 0.03
ipbhprp | ~1 | | 2 | | .p73. | 4.88 | 0.05
imbgeco | ~1 | | 2 | .p34. | .p74. | 6.39 | 0.05
imueclt | ~1 | | 2 | .p35. | .p75. | 6.14 | 0.05
imtcjob | ~1 | | 2 | .p36. | .p76. | 6.30 | 0.05
rlgueim | ~1 | | 2 | .p37. | .p77. | 6.16 | 0.04
Universalism | ~1 | | 2 | | .p78. | 0.57 | 0.03
TraditionConformity | ~1 | | 2 | | .p79. | -0.58 | 0.03
PerceivedThreat | ~1 | | 2 | | .p80. | -2.28 | 0.06
Universalism | =~ | ipeqopt | 3 | | .p81. | 1.00 | 0.00
Universalism | =~ | ipudrst | 3 | .p2. | .p82. | 1.09 | 0.05
Universalism | =~ | impenv | 3 | .p3. | .p83. | 0.81 | 0.04
TraditionConformity | =~ | imptrad | 3 | | .p84. | 1.00 | 0.00
TraditionConformity | =~ | ipfrule | 3 | .p5. | .p85. | 1.34 | 0.05
TraditionConformity | =~ | ipbhprp | 3 | .p6. | .p86. | 1.39 | 0.07
PerceivedThreat | =~ | imbgeco | 3 | | .p87. | 1.00 | 0.00
PerceivedThreat | =~ | imueclt | 3 | .p8. | .p88. | 1.03 | 0.02
PerceivedThreat | =~ | imtcjob | 3 | .p9. | .p89. | 0.80 | 0.02
PerceivedThreat | =~ | rlgueim | 3 | .p10. | .p90. | 0.60 | 0.02
imueclt | ~~ | rlgueim | 3 | | .p91. | 0.91 | 0.13
ipeqopt | ~~ | ipeqopt | 3 | | .p92. | 0.77 | 0.04
ipudrst | ~~ | ipudrst | 3 | | .p93. | 0.69 | 0.04
impenv | ~~ | impenv | 3 | | .p94. | 0.96 | 0.04
imptrad | ~~ | imptrad | 3 | | .p95. | 1.61 | 0.05
ipfrule | ~~ | ipfrule | 3 | | .p96. | 1.34 | 0.06
ipbhprp | ~~ | ipbhprp | 3 | | .p97. | 0.91 | 0.06
imbgeco | ~~ | imbgeco | 3 | | .p98. | 1.95 | 0.13
imueclt | ~~ | imueclt | 3 | | .p99. | 2.65 | 0.17
imtcjob | ~~ | imtcjob | 3 | | .p100. | 2.93 | 0.15
rlgueim | ~~ | rlgueim | 3 | | .p101. | 3.63 | 0.15
Universalism | ~~ | Universalism | 3 | | .p102. | 0.35 | 0.03
TraditionConformity | ~~ | TraditionConformity | 3 | | .p103. | 0.40 | 0.04
PerceivedThreat | ~~ | PerceivedThreat | 3 | | .p104. | 4.17 | 0.18
Universalism | ~~ | TraditionConformity | 3 | | .p105. | 0.09 | 0.02
Universalism | ~~ | PerceivedThreat | 3 | | .p106. | -0.48 | 0.05
TraditionConformity | ~~ | PerceivedThreat | 3 | | .p107. | 0.27 | 0.05
ipeqopt | ~1 | | 3 | .p28. | .p108. | 4.57 | 0.03
ipudrst | ~1 | | 3 | .p29. | .p109. | 4.31 | 0.03
impenv | ~1 | | 3 | .p30. | .p110. | 4.57 | 0.02
imptrad | ~1 | | 3 | .p31. | .p111. | 4.55 | 0.03
ipfrule | ~1 | | 3 | .p32. | .p112. | 4.25 | 0.03
ipbhprp | ~1 | | 3 | | .p113. | 4.99 | 0.05
imbgeco | ~1 | | 3 | .p34. | .p114. | 6.39 | 0.05
imueclt | ~1 | | 3 | .p35. | .p115. | 6.14 | 0.05
imtcjob | ~1 | | 3 | .p36. | .p116. | 6.30 | 0.05
rlgueim | ~1 | | 3 | .p37. | .p117. | 6.16 | 0.04
Universalism | ~1 | | 3 | | .p118. | 0.39 | 0.03
TraditionConformity | ~1 | | 3 | | .p119. | -0.45 | 0.03
PerceivedThreat | ~1 | | 3 | | .p120. | -1.22 | 0.07
.p2. | == | .p42. | 0 | | | -2.22e-16 | 0.00
.p2. | == | .p82. | 0 | | | 4.44e-16 | 0.00
.p3. | == | .p43. | 0 | | | 0.00 | 0.00
.p3. | == | .p83. | 0 | | | 6.66e-16 | 0.00
.p5. | == | .p45. | 0 | | | 2.22e-16 | 0.00
.p5. | == | .p85. | 0 | | | 4.44e-16 | 0.00
.p6. | == | .p46. | 0 | | | -2.22e-16 | 0.00
.p6. | == | .p86. | 0 | | | -2.22e-16 | 0.00
.p8. | == | .p48. | 0 | | | 2.22e-16 | 0.00
.p8. | == | .p88. | 0 | | | 4.44e-16 | 0.00
.p9. | == | .p49. | 0 | | | -2.22e-16 | 0.00
.p9. | == | .p89. | 0 | | | 4.44e-16 | 0.00
.p10. | == | .p50. | 0 | | | 0.00 | 0.00
.p10. | == | .p90. | 0 | | | 5.55e-16 | 0.00
.p28. | == | .p68. | 0 | | | -8.88e-16 | 0.00
.p28. | == | .p108. | 0 | | | 0.00 | 0.00
.p29. | == | .p69. | 0 | | | 0.00 | 0.00
.p29. | == | .p109. | 0 | | | 2.66e-15 | 0.00
.p30. | == | .p70. | 0 | | | 0.00 | 0.00
.p30. | == | .p110. | 0 | | | 0.00 | 0.00
.p31. | == | .p71. | 0 | | | 1.78e-15 | 0.00
.p31. | == | .p111. | 0 | | | 1.78e-15 | 0.00
.p32. | == | .p72. | 0 | | | 0.00 | 0.00
.p32. | == | .p112. | 0 | | | 0.00 | 0.00
.p34. | == | .p74. | 0 | | | 0.00 | 0.00
.p34. | == | .p114. | 0 | | | 1.78e-15 | 0.00
.p35. | == | .p75. | 0 | | | -8.88e-16 | 0.00
.p35. | == | .p115. | 0 | | | 8.88e-16 | 0.00
.p36. | == | .p76. | 0 | | | -8.88e-16 | 0.00
.p36. | == | .p116. | 0 | | | 1.78e-15 | 0.00
.p37. | == | .p77. | 0 | | | 0.00 | 0.00
.p37. | == | .p117. | 0 | | | 8.88e-16 | 0.00
Since no further parameters are recommended after the LavTestScore() function, we use the results of the partial measurement invariance of the individual CFAs. With this we also release the variables impenv and imbgeco.
Reference indicator method
scfa_fit_scalar_partial3 <- cfa(
model = "
Universalism =~ ipeqopt + ipudrst + impenv
TraditionConformity =~ imptrad + ipfrule + ipbhprp
PerceivedThreat =~ imbgeco + imueclt + imtcjob + rlgueim
imueclt ~~ rlgueim
",
data = ESS07,
estimator = "MLR",
group = "country",
group.equal = c("loadings", "intercepts"),
group.partial = c("ipbhprp~1", "impenv~1", "imbgeco~1"),
# optional if there are missing values
missing = "fiml.x"
)
summary(
object = scfa_fit_scalar_partial3,
fit.measures = T,
standardized = T
# rsquare = T
)
lavaan 0.6-12 ended normally after 119 iterations
Estimator ML
Optimization method NLMINB
Number of model parameters 108
Number of equality constraints 28
Number of observations per group:
CZ 1393
DE 2671
GB 1780
Number of missing patterns per group:
CZ 1
DE 1
GB 1
Model Test User Model:
Standard Robust
Test Statistic 707.291 608.850
Degrees of freedom 115 115
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.162
Yuan-Bentler correction (Mplus variant)
Test statistic for each group:
CZ 158.542 136.476
DE 267.512 230.279
GB 281.237 242.094
Model Test Baseline Model:
Test statistic 11661.448 9234.176
Degrees of freedom 135 135
P-value 0.000 0.000
Scaling correction factor 1.263
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.949 0.946
Tucker-Lewis Index (TLI) 0.940 0.936
Robust Comparative Fit Index (CFI) 0.950
Robust Tucker-Lewis Index (TLI) 0.941
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -101101.281 -101101.281
Scaling correction factor 0.915
for the MLR correction
Loglikelihood unrestricted model (H1) -100747.635 -100747.635
Scaling correction factor 1.192
for the MLR correction
Akaike (AIC) 202362.561 202362.561
Bayesian (BIC) 202896.415 202896.415
Sample-size adjusted Bayesian (BIC) 202642.198 202642.198
Root Mean Square Error of Approximation:
RMSEA 0.051 0.047
90 Percent confidence interval - lower 0.048 0.044
90 Percent confidence interval - upper 0.055 0.050
P-value RMSEA <= 0.05 0.255 0.927
Robust RMSEA 0.051
90 Percent confidence interval - lower 0.047
90 Percent confidence interval - upper 0.055
Standardized Root Mean Square Residual:
SRMR 0.040 0.040
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Group 1 [CZ]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.600 0.565
ipudrst (.p2.) 1.090 0.043 25.606 0.000 0.654 0.588
impenv (.p3.) 0.952 0.049 19.479 0.000 0.572 0.556
TraditionConformity =~
imptrad 1.000 0.540 0.426
ipfrule (.p5.) 1.340 0.053 25.086 0.000 0.723 0.631
ipbhprp (.p6.) 1.380 0.065 21.145 0.000 0.744 0.643
PerceivedThreat =~
imbgeco 1.000 1.657 0.796
imueclt (.p8.) 0.948 0.022 43.229 0.000 1.571 0.769
imtcjob (.p9.) 0.746 0.016 45.442 0.000 1.236 0.589
rlgueim (.10.) 0.551 0.019 28.846 0.000 0.913 0.456
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.406 0.115 3.540 0.000 0.406 0.174
Universalism ~~
TraditnCnfrmty 0.272 0.019 13.937 0.000 0.839 0.839
PerceivedThret -0.066 0.040 -1.663 0.096 -0.067 -0.067
TraditionConformity ~~
PerceivedThret 0.056 0.037 1.499 0.134 0.062 0.062
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.525 0.026 176.563 0.000 4.525 4.260
.ipudrst (.29.) 4.264 0.027 155.240 0.000 4.264 3.830
.impenv 4.688 0.028 166.708 0.000 4.688 4.561
.imptrad (.31.) 4.553 0.026 177.481 0.000 4.553 3.591
.ipfrule (.32.) 4.249 0.031 136.626 0.000 4.249 3.710
.ipbhprp 4.477 0.031 142.505 0.000 4.477 3.866
.imbgeco 6.317 0.056 113.018 0.000 6.317 3.036
.imueclt (.35.) 6.181 0.052 118.119 0.000 6.181 3.025
.imtcjob (.36.) 6.365 0.053 119.867 0.000 6.365 3.034
.rlgueim (.37.) 6.180 0.042 147.292 0.000 6.180 3.083
Unvrsls 0.000 0.000 0.000
TrdtnCn 0.000 0.000 0.000
PrcvdTh 0.000 0.000 0.000
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.768 0.047 16.219 0.000 0.768 0.681
.ipudrst 0.811 0.043 18.868 0.000 0.811 0.655
.impenv 0.730 0.040 18.461 0.000 0.730 0.691
.imptrad 1.316 0.063 20.801 0.000 1.316 0.819
.ipfrule 0.789 0.050 15.881 0.000 0.789 0.602
.ipbhprp 0.787 0.054 14.611 0.000 0.787 0.587
.imbgeco 1.585 0.135 11.697 0.000 1.585 0.366
.imueclt 1.708 0.135 12.662 0.000 1.708 0.409
.imtcjob 2.875 0.151 18.974 0.000 2.875 0.653
.rlgueim 3.184 0.170 18.736 0.000 3.184 0.792
Universalism 0.360 0.031 11.678 0.000 1.000 1.000
TraditnCnfrmty 0.291 0.028 10.228 0.000 1.000 1.000
PerceivedThret 2.745 0.151 18.207 0.000 1.000 1.000
Group 2 [DE]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.463 0.485
ipudrst (.p2.) 1.090 0.043 25.606 0.000 0.505 0.572
impenv (.p3.) 0.952 0.049 19.479 0.000 0.441 0.463
TraditionConformity =~
imptrad 1.000 0.614 0.450
ipfrule (.p5.) 1.340 0.053 25.086 0.000 0.823 0.585
ipbhprp (.p6.) 1.380 0.065 21.145 0.000 0.848 0.649
PerceivedThreat =~
imbgeco 1.000 1.831 0.794
imueclt (.p8.) 0.948 0.022 43.229 0.000 1.737 0.737
imtcjob (.p9.) 0.746 0.016 45.442 0.000 1.366 0.658
rlgueim (.10.) 0.551 0.019 28.846 0.000 1.009 0.490
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 0.794 0.088 8.999 0.000 0.794 0.278
Universalism ~~
TraditnCnfrmty 0.059 0.011 5.353 0.000 0.208 0.208
PerceivedThret -0.353 0.031 -11.239 0.000 -0.416 -0.416
TraditionConformity ~~
PerceivedThret 0.258 0.036 7.162 0.000 0.229 0.229
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.525 0.026 176.563 0.000 4.525 4.745
.ipudrst (.29.) 4.264 0.027 155.240 0.000 4.264 4.831
.impenv 4.402 0.040 108.784 0.000 4.402 4.620
.imptrad (.31.) 4.553 0.026 177.481 0.000 4.553 3.335
.ipfrule (.32.) 4.249 0.031 136.626 0.000 4.249 3.022
.ipbhprp 4.874 0.050 97.750 0.000 4.874 3.732
.imbgeco 6.785 0.087 77.682 0.000 6.785 2.942
.imueclt (.35.) 6.181 0.052 118.119 0.000 6.181 2.625
.imtcjob (.36.) 6.365 0.053 119.867 0.000 6.365 3.067
.rlgueim (.37.) 6.180 0.042 147.292 0.000 6.180 2.998
Unvrsls 0.624 0.028 21.993 0.000 1.348 1.348
TrdtnCn -0.582 0.030 -19.696 0.000 -0.947 -0.947
PrcvdTh -2.582 0.090 -28.751 0.000 -1.410 -1.410
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.695 0.038 18.148 0.000 0.695 0.764
.ipudrst 0.524 0.028 18.803 0.000 0.524 0.673
.impenv 0.713 0.030 24.157 0.000 0.713 0.786
.imptrad 1.486 0.045 32.729 0.000 1.486 0.797
.ipfrule 1.300 0.046 28.147 0.000 1.300 0.657
.ipbhprp 0.987 0.047 20.961 0.000 0.987 0.579
.imbgeco 1.963 0.118 16.694 0.000 1.963 0.369
.imueclt 2.531 0.117 21.665 0.000 2.531 0.456
.imtcjob 2.441 0.109 22.468 0.000 2.441 0.567
.rlgueim 3.231 0.110 29.398 0.000 3.231 0.760
Universalism 0.214 0.019 11.344 0.000 1.000 1.000
TraditnCnfrmty 0.378 0.030 12.697 0.000 1.000 1.000
PerceivedThret 3.354 0.154 21.755 0.000 1.000 1.000
Group 3 [GB]:
Latent Variables:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
Universalism =~
ipeqopt 1.000 0.561 0.534
ipudrst (.p2.) 1.090 0.043 25.606 0.000 0.611 0.585
impenv (.p3.) 0.952 0.049 19.479 0.000 0.534 0.484
TraditionConformity =~
imptrad 1.000 0.635 0.448
ipfrule (.p5.) 1.340 0.053 25.086 0.000 0.851 0.593
ipbhprp (.p6.) 1.380 0.065 21.145 0.000 0.876 0.675
PerceivedThreat =~
imbgeco 1.000 2.127 0.850
imueclt (.p8.) 0.948 0.022 43.229 0.000 2.017 0.769
imtcjob (.p9.) 0.746 0.016 45.442 0.000 1.587 0.677
rlgueim (.10.) 0.551 0.019 28.846 0.000 1.172 0.521
Covariances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.imueclt ~~
.rlgueim 1.015 0.134 7.582 0.000 1.015 0.315
Universalism ~~
TraditnCnfrmty 0.093 0.017 5.448 0.000 0.261 0.261
PerceivedThret -0.465 0.049 -9.524 0.000 -0.390 -0.390
TraditionConformity ~~
PerceivedThret 0.279 0.050 5.590 0.000 0.207 0.207
Intercepts:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt (.28.) 4.525 0.026 176.563 0.000 4.525 4.308
.ipudrst (.29.) 4.264 0.027 155.240 0.000 4.264 4.080
.impenv 4.432 0.041 107.971 0.000 4.432 4.018
.imptrad (.31.) 4.553 0.026 177.481 0.000 4.553 3.212
.ipfrule (.32.) 4.249 0.031 136.626 0.000 4.249 2.960
.ipbhprp 4.985 0.050 99.678 0.000 4.985 3.843
.imbgeco 6.409 0.080 79.990 0.000 6.409 2.560
.imueclt (.35.) 6.181 0.052 118.119 0.000 6.181 2.357
.imtcjob (.36.) 6.365 0.053 119.867 0.000 6.365 2.715
.rlgueim (.37.) 6.180 0.042 147.292 0.000 6.180 2.745
Unvrsls 0.438 0.031 13.959 0.000 0.781 0.781
TrdtnCn -0.449 0.032 -13.982 0.000 -0.708 -0.708
PrcvdTh -1.312 0.089 -14.722 0.000 -0.617 -0.617
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.ipeqopt 0.789 0.043 18.161 0.000 0.789 0.715
.ipudrst 0.719 0.040 17.865 0.000 0.719 0.658
.impenv 0.931 0.041 22.837 0.000 0.931 0.765
.imptrad 1.606 0.054 29.487 0.000 1.606 0.799
.ipfrule 1.337 0.058 23.178 0.000 1.337 0.649
.ipbhprp 0.915 0.055 16.558 0.000 0.915 0.544
.imbgeco 1.745 0.136 12.860 0.000 1.745 0.278
.imueclt 2.808 0.170 16.481 0.000 2.808 0.408
.imtcjob 2.979 0.147 20.236 0.000 2.979 0.542
.rlgueim 3.696 0.153 24.192 0.000 3.696 0.729
Universalism 0.315 0.031 10.239 0.000 1.000 1.000
TraditnCnfrmty 0.403 0.036 11.262 0.000 1.000 1.000
PerceivedThret 4.524 0.192 23.540 0.000 1.000 1.000
Reference indicator method
compFit.scfa.5 <- compareFit(
scalar = scfa_fit_scalar_partial3,
metric = scfa_fit_metric,
config = scfa_fit_config,
argsLRT = list(method = "satorra.bentler.2001")
)
summary(
object = compFit.scfa.5,
fit.measures = c("chisq.scaled", "df.scaled", "pvalue.scaled",
"rmsea.scaled", "cfi.scaled", "tli.scaled",
"srmr", "aic", "bic")
)
################### Nested Model Comparison #########################
Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
lavaan NOTE:
The "Chisq" column contains standard test statistics, not the
robust test that should be reported per model. A robust difference
test is a function of two standard (not robust) statistics.
Df AIC BIC Chisq Chisq diff Df diff Pr(>Chisq)
config 93 202254 202935 555.17
metric 107 202264 202851 592.98 31.036 14 0.005479 **
scalar 115 202363 202896 707.29 110.042 8 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
####################### Model Fit Indices ###########################
chisq.scaled df.scaled pvalue.scaled rmsea.scaled cfi.scaled tli.scaled
config 477.046† 93 .000 .046 .958† .939
metric 506.441 107 .000 .044† .956 .945†
scalar 608.850 115 .000 .047 .946 .936
srmr aic bic
config .034† 202254.443† 202935.107
metric .036 202264.246 202851.485†
scalar .040 202362.561 202896.415
################## Differences in Fit Indices #######################
df.scaled rmsea.scaled cfi.scaled tli.scaled srmr aic
metric - config 14 -0.002 -0.002 0.006 0.002 9.802
scalar - metric 8 0.003 -0.010 -0.008 0.004 98.316
bic
metric - config -83.622
scalar - metric 44.930
Result